ともさんのHP >プロブラミング >JavaFX >JavaFXのUIコンポーネント

JavaFXおもなUIコンポーネント

ボタンやテキストフィールドなど、JavaFXで用意されているよく使いそうなUIの紹介です。
本来ならクリックしたらイベントを起こすのですが、今回は並べて表示させているだけです。
Swingよりも少し種類が増えていますが、使いかたは変わっていないようですね。
JavaFX主なUIコンポーネント

広告


ラベル、テキストフィールド、ボタン楽天 、トグルボタン、ラジオボタン、チェックボックス、選択ボックス、 コンボボックス、リストビューについて調べましたが、他にも...
日付ピッカーや色ピッカー、HTMLエディタ、WEBブラウザーなどもあります。

TextとTextFieldの違い

Textは文書を表示するノード、TextFieldは文書を入れるコンポーネントになります。

ButtonとToggleButtonの違い

ボタンは押したら凹んで元に戻る。トグルボタンは押すと凹んだまま。もう一度押すと元に戻る。

ChoiceBoxとComboBoxの違い

選択ボックスはあらかじめ用意されたリストから選ぶことしかできない。
コンボボックスはユーザーがリスト以外のアイテムを入力することが可能。

サンプルプログラム

package tomojavalib.fx;

import javafx.application.Application;
import javafx.collections.FXCollections;
import javafx.geometry.Orientation;
import javafx.scene.Scene;
import javafx.scene.control.*;
import javafx.scene.layout.*;
import javafx.stage.Stage;

public class UI extends Application {

 public static void main(String[] args) {
  Application.launch(args);
 }
 
 @Override
 public void start(Stage stage) throws Exception {
  //StageにPaneとSceneを置く
  Vbox pane = new Vbox();
  //UIを置く
  this.setUI( pane );
  Scene scene = new Scene(pane, 320, 400);
  stage.setScene(scene);
  stage.show();
 }
 
private void setUI( Pane p ){
//ラベル
Label l1 = new Label( " ラベル " );
p.getChildren().add( l1 );
Label l2 = new Label( " ラベルです " );
p.getChildren().add( l2 );

Separator sep1 = new Separator();
sep1.setOrientation( Orientation.HORIZONTAL );
p.getChildren().add( sep1 );

//テキストフィールド
Label l3 = new Label( " テキストフィールド " );
p.getChildren().add( l3 );
TextField t = new TextField( " テキストフィールド " );
p.getChildren().add( t );

Separator sep2 = new Separator();
p.getChildren().add( sep2 );

//ボタン
Label l4 = new Label( " ボタン " );
p.getChildren().add( l4 );
Button b = new Button( " ボタン " );
p.getChildren().add( b );

Separator sep3 = new Separator();
p.getChildren().add( sep3 );

//トグルボタン
Label l5 = new Label( " トグルボタン " );
p.getChildren().add( l5 );
ToggleButton tb = new ToggleButton( " トグルボタン " );
p.getChildren().add( tb );

Separator sep4 = new Separator();
p.getChildren().add( sep4 );

Label l6 = new Label( " ラジオボタン " );
p.getChildren().add( l6 );
RadioButton rb1 = new RadioButton( " ラジオボタン1 " );
rb1.setSelected(true);
p.getChildren().add( rb1 );
RadioButton rb2 = new RadioButton( " ラジオボタン2 " );
p.getChildren().add( rb2 );
RadioButton rb3 = new RadioButton( " ラジオボタン3 " );
p.getChildren().add( rb3 );
ToggleGroup group = new ToggleGroup();
group.getToggles().add(rb1);
group.getToggles().add(rb2);
group.getToggles().add(rb3);

Separator sep5 = new Separator();
p.getChildren().add( sep5 );

// チェックボックス
Label l7 = new Label( " チェックボックス " );
p.getChildren().add( l7 );
CheckBox check = new CheckBox("チェックボックス");
check.setAllowIndeterminate( true );
p.getChildren().addAll( check );

Separator sep6 = new Separator();
p.getChildren().add( sep6 );

// 選択ボックス
Label l8 = new Label( " 選択ボックス " );
p.getChildren().add( l8 );
ChoiceBox cb = new ChoiceBox( FXCollections.observableArrayList( "上" , "下" , new Separator() , "右" , "左" ));
cb.setValue("上");
p.getChildren().add( cb );

Separator sep7 = new Separator();
p.getChildren().add( sep7 );

// コンボボックス
Label l9 = new Label( " コンボボックス " );
p.getChildren().add( l9 );
ComboBox combo = new ComboBox( FXCollections.observableArrayList( "上" , "下" , new Separator() , "右" , "左" ) );
combo.setEditable( true );
combo.setValue("下");
p.getChildren().add( combo );

// リストビュー
ListView<String>    lv   = new ListView<String>();
lv.setItems( FXCollections.observableArrayList( "1行目" , "2行目" , "3行目" ) );
lv.setMaxHeight(60);
p.getChildren().add( lv );


 
}

最終更新日: 2017-03-31 10:01:21

ともさんのHP >プロブラミング >JavaFX >JavaFXのUIコンポーネント

広告
新着ページ

AIを利用し、衣服のデザイン画から型紙を制作する方法  
2つのアパレル3D技術でひらくオーダーメイド生産の手法  
【洋裁型紙】前後身頃の肩の傾きは何故前身頃の方が傾いているのか  
電子追尾式天体写真撮影法  
日本ミツバチ巣箱の種類  
ドラフター(製図台)でソーイング  
日本ミツバチが逃亡  
カメさんの箱庭  
天体用デジタルカメラの構造と天体写真  
Javaで静止画像(Jpeg)を動画(Mov)に変換  
USBカメラをJAVAで制御  

他のサイト

3D-CAD
洋裁CAD

いいねなど

 RSS 

Author: Tomoyuki Ito

このサイトの文章・写真の無断転載を禁じます