Java グラフィカル インターフェイス --- 基本コンポーネント

目次

1.基本コンポーネントの紹介

二、ダイアログダイアログボックス

(1)ダイアログ

(2)ファイルダイアログ


1.基本コンポーネントの紹介

Button Button
Canvas 描画用キャンバス
Checkbox Checkbox コンポーネント
CheckboxGroup 複数の Checkbox コンポーネントをグループに結合するために使用されます。Checkbox コンポーネントのグループの 1 つだけを選択できます。つまり、すべてがラジオ ボタン コンポーネントになります。 選択ドロップダウン選択ボックス フレーム ウィンドウ

In GUI プログラムでは、このクラスを使用して
ウィンドウのラベル ラベル クラスを作成します。このクラスは、プロンプト テキストのリスト ボックス コンポーネントを配置するために使用され
、複数の項目を追加できます。
単独では存在できない Panel の基本コンテナ クラスは、ユーザーが特定の範囲の値を入力する必要がある
場合は、スライダー コンポーネントを使用して、RGB の 3 つの値をパレットに設定するために使用できます。スライダーを作成するときは、その方向、初期値、スライダー サイズ、最小値と最大値を指定する必要があります
ScrollPane 水平および垂直スクロール バーを持つコンテナー コンポーネント
TextArea 複数行のテキスト フィールド
TextField 1 行のテキスト ボックス

ケースを図に示します。

class Solution {
    //制造组件
    Frame s=new Frame("tittle");
    Box di=Box.createHorizontalBox();
    Box leftdi=Box.createHorizontalBox();
    Choice cho=new Choice();
    CheckboxGroup gr=new CheckboxGroup();
    Checkbox c1=new Checkbox("男",gr,true);
    Checkbox c2=new Checkbox("女",gr,false);
    Checkbox c3=new Checkbox("是否已婚?");
    Box lefttop=Box.createVerticalBox();
    Box top=Box.createHorizontalBox();

    public void init(){
        //先组装最底下的
        di.add(new TextField(30));
        di.add(new Button("确认"));
        s.add(di,BorderLayout.SOUTH);
        cho.add("红色");
        cho.add("蓝色");
        cho.add("白色");
        leftdi.add(cho);
        leftdi.add(c1);
        leftdi.add(c2);
        leftdi.add(c3);
        lefttop.add(new TextArea("你好",6,20,TextArea.SCROLLBARS_VERTICAL_ONLY));
        lefttop.add(leftdi);
        top.add(lefttop);
        top.add(new TextArea("hello",10,20,TextArea.SCROLLBARS_VERTICAL_ONLY));
        s.add(top);
        s.pack();
        s.setVisible(true);
    }

}






public class Test {
    public static void main(String[] args){
       Solution ss=new Solution();
       ss.init();

    }
}

二、ダイアログダイアログボックス

(1)ダイアログ

Dialog は Window クラスのサブクラスであり、コンテナー クラスであり、特別なコンポーネントです。ダイアログボックスは独立して存在できるトップレベルのウィンドウなので、使い方は通常のウィンドウとほぼ同じですが、ダイアログボックスは次の2点に注意する必要があります
。通常、親ウィンドウが必要です
(2) 0 ダイアログ ボックスには、非モーダルとモーダルの 2 種類があります。モーダル ダイアログ ボックスを開くと、モーダル ダイアログ ボックスは常に親ウィンドウの上に配置されます。モーダル ダイアログ ボックスが閉じられる前に、親ウィンドウはフォーカスを取得できません。

 コンストラクタ
Dialog(Frame ower, String title boolean modal) ダイアログ オブジェクトを作成します。ここで、owner は現在のダイアログの親ウィンドウ、title はダイアログのタイトル、modal は現在のダイアログがモーダル ダイアログかどうかです。

 

public static void main(String[] arsg){
        Frame s=new Frame("title");
        //创建水平
        Dialog d1=new Dialog(s,"模式对话框",true);
        Dialog d2=new Dialog(s,"非模式对话框",false);
        Button b1=new Button("模式对话框");
        Button b2=new Button("非模式对话框");

        b1.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                 d1.setVisible(true);
            }
        });
        b2.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                d2.setVisible(true);
            }
        });
        s.add(b1,BorderLayout.NORTH);
        s.add(b2);
        s.pack();
        s.setVisible(true);
    }

(2)ファイルダイアログ

Dialog クラスにはサブクラスもあります: FieldDialog, ファイルを開くか保存するためのファイル ダイアログ ボックスを表します. FileDialog は実行中のプラットフォームの実装に依存するため, FileDialog はモーダルまたは非モーダルを指定できないことに注意してください.実行中のプラットフォームのファイル ダイアログ ボックスがモーダルである場合、FileDialog もモーダルであり、それ以外の場合は非モーダルです。


メソッド:
FileDialog(Frame parent, String title, int mode) テキスト ダイアログ ボックスを作成する
                                                                          親は、親ウィンドウの
                                                                          タイトルを指定します: ダイアログ
                                                                          タイトル モード: ファイル ダイアログ タイプは、FileDialog.LOAD として指定された場合、ファイルを開くために使用されます。 .SAVE はファイルを保存するために使用されます


String getDirectory() 開いた、または保存したファイルの絶対パスを取得します
String getFile() 開いた、または保存したファイルのファイル名を取得します

 

ケースを図に示します。

 

public static void main(String[] args) {
        Frame s=new Frame("title");
        Button b2=new Button("保存文件");
        Button b1=new Button("打开文件");
        FileDialog f1=new FileDialog(s,"打开文件",FileDialog.LOAD);
        FileDialog f2=new FileDialog(s,"保存文件",FileDialog.SAVE);
        b1.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                f1.setVisible(true);
                System.out.println("打开的文件路径是"+f1.getDirectory()+",文件名="+f1.getFile());
            }
        });
        b2.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                f2.setVisible(true);
                System.out.println("保存的文件路径="+f2.getDirectory()+",文件名="+f2.getFile());
            }
        });
        s.add(b1);
        s.add(b2,BorderLayout.SOUTH);
        s.pack();
        s.setVisible(true);
    }

 

おすすめ

転載: blog.csdn.net/gaoqiandr/article/details/128599103