[JavaSwing] JLabelの
コンテンツ
シンプルなJLabelのを作成
色を入れて, JLabelのの背景色
JLabelのは、多くの場合、テキストまたはガイドラインを作成するための画像を表示するために使用します, UIの指示.
使用上の図で 4 正しく、必要な情報を入力するようにユーザーを導くためのJLabel.
例 1: シンプルなJLabelのを作成
package nguyenvanquan7826.JLabel; import java.awt.GridLayout; import javax.swing.Icon; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JLabel; public class MyJLabel extends JFrame { public MyJLabel() { // create frame setLayout(new GridLayout(1, 3, 5, 5)); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // create image Icon icon = new ImageIcon(getClass().getResource("7826.png")); // create three JLabel JLabel lb1 = new JLabel("label text only"); JLabel lb2 = new JLabel(icon); JLabel lb3 = new JLabel("icon and text", icon, JLabel.CENTER); lb3.setVerticalTextPosition(JLabel.BOTTOM); lb3.setHorizontalTextPosition(JLabel.CENTER); // add three label to frame add(lb1); add(lb2); add(lb3); // display frame pack(); setLocationRelativeTo(null); setVisible(true); } public static void main(String[] args) { new MyJLabel(); } }
我々は結果 3 次のようにJLabelの (示すように注意ファイルが同じパッケージ7826.pngに配置されています)
例では、次の文を注意の上:
– setLayoutの(新しいGridLayoutの(1, 3, 5, 5)); 注文 GridLayoutの とJFrameのため 1 行, 3 ポスト, 列と行は5pxので分離されています. レイアウト 一時は、JFrameのためのオブジェクトのレイアウトを理解します, なしレイアウト場合、オブジェクトがオーバーラップされます.
– アイコンアイコン=新しいイメージアイコン(); JLabelのに読み出さフォトイメージングコマンドファイル.
– 次です 3 コマンド 3 JLabelのフォーマット. すべてとのJLabel 6 初期化フォーマット:
+/ JLabelの(): 画像や空の文字列なしでJLabelのインスタンスを作成します。
+/ JLabelの(アイコン画像): JLabelのインスタンスを作成し、画像を割り当てます
+/ JLabelの(アイコン画像, INTたHorizontalAlignment): JLabelのインスタンスを作成し、画像と水平方向の配置を指定します
+/ JLabelの(文字列のテキスト): 指定されたテキストのインスタンスを作成します。JLabelの
+/ JLabelの(文字列のテキスト, アイコンアイコン, INTたHorizontalAlignment): 指定されたテキストのインスタンスを作成します。JLabelの, 水平配向VA画像
+/ JLabelの(文字列のテキスト, INTたHorizontalAlignment): 指定されたテキストのインスタンスを作成します。JLabelの, 水平配向VA.
LB3の間、私たちは持っています 2 顎 setVerticalTextPosition と setHorizontalTextPosition 垂直テキストの位置を設定します (BOTTOM) 水平 (CENTER). テキストのみを含む同様のJLabelのためのアライメントLB1を必要に応じて、 (左, 右, 間に, …) 我々はこの方法を使用します setHorizontalAlignment(int型のアライメント).
例 2: 色を入れて, JLabelのの背景色
package nguyenvanquan7826.JLabel; import java.awt.Color; import java.awt.GridLayout; import javax.swing.JFrame; import javax.swing.JLabel; public class MyJlabelWithColor extends JFrame { public MyJlabelWithColor() { setLayout(new GridLayout(1, 2, 5, 5)); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setSize(400, 200); // create JLabel have text color red and background color green JLabel lb; lb = createJLabel("JLabel 1", Color.red, Color.green); add(lb); // create JLabel have text color blue and background color yellow lb = createJLabel("JLabel 2", Color.blue, Color.yellow); add(lb); // display JFrame setLocationRelativeTo(null); setVisible(true); } private JLabel createJLabel(String text, Color textColor, Color backgroundColor) { JLabel lb = new JLabel(text); // set align lb.setHorizontalAlignment(JLabel.CENTER); // set color lb.setForeground(textColor); // set background color lb.setOpaque(true); lb.setBackground(backgroundColor); return lb; } public static void main(String[] args) { new MyJlabelWithColor(); } }
この例では、コンテンツの作成します createJLabel 収益 1 順番にこれらの引数を指定してJLabelのテキストが送信されます, その色と色brackground. 注目すべきは、背景色を設定するために、我々は、配置する必要があります 不透明な JLabelのの真の (デフォルトはfalseです。).
参照する: クラスのJLabel
私は、背景透明ラベルが適切ではない行うことができます, すなわち、場合、画像の背後にラベルを挿入します, ラベルの上書きに, そのように異なるカラースキームが表示されます, 文字は、ラベルのフレームではない我慢できません?
デフォルトではJLanelのバックグラウンドは、その後の上に配置されています. あなたは、画像のJLabelの背景を設定したい場合は、次の操作を行うことができます:
あなたが対応するパッケージにどこかから画像置かれています (しかし、正しいパスを必要とします). また、あなたはJFrameなど他のオブジェクトと、このようにそれを行うことができます, JPanelの, …
広告はベトナムチュ厚いビッグバンtiengベトナムDK KOを共同?
英語で彼女の書き込みキャプションが、そのうちのベトナムスタイルから翻訳. あなたのサービスを停止するのは簡単. 英語でのキャプションと名前をよく理解することはオフラインになります, それは有用であろう.
私はファイルレベルの方法を教えてもらえます(7826.PNG) 何の先生ません.
単独の画像だけであるファイル, あなたの写真がどこにも使用されています.
私は7826.png上に示すように、パッケージ内のファイルを置く方法をお聞きしたいです)
あなただけを停止するためにそれをコピーして貼り付けます.
あなたが持っていると仮定 1 上のJLabel 1 JFrameの, 私はメイクNTN JLabelのブロ上に線を描きたいです
そして、残り物JLableはと機能を書き換えOnDraw
Eタイプ入力コードNetBeansはそれ、この軍事的エラーを行っA:
無効なメソッド宣言; 戻り値の型が必要
setLayoutの(新しいGridLayoutの(1, 3, 5, 5);
型の開始が不正です
このエラーのz aは何ですか?
彼はまた、より多くの理由は明らかではないが、…
のために ( int型のi = 0; で < 4; ++で) {
のために ( int型J = 0; J < 3; ++J) {
画像imgTemp =はcreateImage(新しいFilteredImageSourceにより(img.getSource(),
新しいCropImageFilter(j個の*幅/ 3, I *高さ/ 3, (幅/ 3)+1, 高さ/ 3 + 1)));
vt.add(imgTemp);
}
}
のために(int型のi = 0; で < 12; 私 )
{
チェック[で] =偽;
}
checkwin =新しいint型[4][3];
のために(int型のi = 0; で < 4; 私 ){
のために( int型J = 0; J 3){
}
bt.setIcon(新しいイメージアイコン(vt.get(インデックス)));
checkwin[で][J] =インデックス ;
チェック[インデックス] =真;
jp.add(BT);
}
}
私は少しはそれがない記事と無関係なビットのために彼に尋ねました? 私はランダム関数を使用して、必要がアレイに画像を切り抜きます 1 固定された画像の保存における細胞マトリックス 1 場所はどのようにAであり? 私のランダム関数は、彼は先生をおないためのソリューションを指摘することができます不良と思われます?
私はあなたのコンテンツがどこにもランダム表示されません. あなたがしたい場合 1 ランダム敵との写真固定された細胞は、そのボックスに与えていません.
BT =新しいJButtonの();
bt.addActionListener(この);
ランダムランダム=新しいランダム();
int型のインデックス= Math.abs(Random.nextInt()%11);// からランダム 0 へ 10
同時に(チェック[インデックス]){
インデックス= Math.abs(Random.nextInt()%11);
のSystem.out.println(インデックス+” “);
}
もし(で>3){
}
bt.setIcon(新しいイメージアイコン(vt.get(インデックス)));
checkwin[で][J] =インデックス ;
チェック[インデックス] =真;
jp.add(BT);
こんにちは先生、あなたの労働力不足を置きます.
だから、これはあなたはそれが間違って作る方法です
労働は間違っ先生ではありません. 私はパズルゲームを行います. ランダム、あなたが最終的に邪魔され、再生が完了すると、水が殺される傘. あなたが移植を希望する必要がありますが、最終的に一番下にそれを固定され、他のパズルのピースだけでは先生をシャッフル
彼は機能について私に尋ねました:
アイコンアイコン=新しいイメージアイコン(のgetClass().のgetResource(“7826.PNG”));
// 3 JLabelの作成
JLabelのLB2 =新しいJLabelの(アイコン);
と
ラベル=新しいJLabelの() {
ます。public void paintComponent(グラフィックスグラム) {
g.drawImage(img.getImage(), 0, 0, ヌル);
super.paintComponent(グラム);
}
};
==> 私たちはまた、同じ結果を提供することだと思います, あなたが使用したいかどうかは彼のものではないです ??.
[はい
私は彼に画像の上に単語を書く方法を尋ねてみましょう
あなたがここで見て、試してみてください. http://stackoverflow.com/questions/2736320/write-text-onto-image-in-java
私は、フォントサイズの調整KO先生のためのいくつかの機能を尋ねました ?
あなたはsetTextSizeビューを試してみてください.
hình như không có hàm đó ad ơi e muốn chỉnh cỡ chữ cho đối tượng JLabel mà không được ạ
彼は非常に詳細な演習の先生を説明しました. あなたは非常に多くの先生のEの気持ちをありがとう.
どのようにあなたはJLabelののランダム背景色をお願いしたいです?
VDUそのもの 5 色を変更する秒 1 先生の回.
ランダムな色、カラーコードにそのランダム関数を使用します. やはり 5 秒 1 彼らは投手ビュー対theardてみたら、.
cho e hỏi là mình có thể chọn 1 vùng bất kỳ trên ảnh khi nó được load trên jlabel được không ạ .như kiểu là mình kéo thả chuột để chọn 1 hình chữ nhật bất kì trên đó và xử lí mỗi vùng đó thôi ý .
Cái này mình chưa thử 🙂 Bạn tìm thêm trên google xem nhé.