JavaFX スクエアボタン
Sheeraz Gul
2024年2月15日
四角いボタンは、Java で ToolBar
クラスを拡張することで作成できます。このチュートリアルでは、JavaFX で正方形のボタンを作成する方法を示します。
JavaFX で正方形のボタンを作成する
ボタンは、JavaFX で Button クラスをインスタンス化することによって作成されます。ボタンは、JavaFX でいくつかのアクティビティを実行するために使用されます。
これは、JavaFX.scene.control.Button
クラスで表されます。ボタンには、テキストまたはアイコンを付けることができます。
四角いボタンを作成するには、ボタンのサイズを設定する必要があります。次の関数は、JavaFX のボタンのサイズを操作するために使用されます。
機能:
button.setMinWidth() button.setMaxWidth() button
.setPrefWidth()
button.setMinHeight() button.setMaxHeight() button
.setPrefHeight()
button.setMinSize() button.setMaxSize() button.setPrefSize()
上記の方法を使用して、ボタンのサイズを設定して正方形にすることができます。以下の手順に従って、JavaFX で正方形のボタンを作成します。
-
まず、Application クラスを拡張してクラスを作成します。
-
start()
メソッドを実装します。 -
クラス
Button
をインスタンス化してボタンを作成します。 -
ToolBar
クラスを拡張する別のクラスを作成します。このクラスには、メソッドlayoutChildren()
があります。 -
layoutChildren()
メソッドはボタンのサイズを指定します。setPrefWidth()
とsetPrefHeight()
を同じ値で使用して、正方形のボタンを作成できます。 -
ToolBar
クラスを継承するクラスのオブジェクトを作成し、クラスをインスタンス化してボタンを渡します。 -
BorderPane
クラスをインスタンス化し、ToolBar
クラスの上記のオブジェクトを渡すことにより、境界ペインを作成します。 -
シーンオブジェクトを作成し、シーンクラスをインスタンス化して、
BorderPane
オブジェクトをシーンに渡します。 -
setScene()
メソッドを使用して、シーンをステージに追加します。 -
show()
メソッドを使用してステージを表示します。 -
最後に、アプリケーションを起動します。
完全なソースコード:
package delftstack;
import javafx.application.Application;
import javafx.scene.Node;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.ToolBar;
import javafx.scene.layout.BorderPane;
import javafx.stage.Stage;
public class JavaFX_Square_Button extends Application {
@Override
public void start(Stage Demo_Stage) {
Button Button1 = new Button("One");
Button Button2 = new Button("Two Two");
Button Button3 = new Button("Three Three Three");
Square_Button_ToolBar Tool_Bar = new Square_Button_ToolBar();
Tool_Bar.getItems().addAll(Button1, Button2, Button3);
BorderPane Border_Pane = new BorderPane();
Border_Pane.setTop(Tool_Bar);
Scene Demo_Scene = new Scene(Border_Pane, 500, 500);
Demo_Stage.setScene(Demo_Scene);
Demo_Stage.show();
Tool_Bar.requestLayout();
}
// A derivative of the ToolBar class to resize all buttons of the same size and square.
class Square_Button_ToolBar extends ToolBar {
@Override
protected void layoutChildren() {
double Min_Pref_Size = Calculate_Pref_Child_Size();
for (Node x : getItems()) {
if (x instanceof Button) {
((Button) x).setPrefWidth(Min_Pref_Size);
((Button) x).setPrefHeight(Min_Pref_Size);
}
}
super.layoutChildren();
}
private double Calculate_Pref_Child_Size() {
double Min_Pref_Size = 0.0d;
for (Node x : getItems()) {
if (x instanceof Button) {
Min_Pref_Size = Math.max(Min_Pref_Size, x.prefWidth(-1));
}
}
return Min_Pref_Size;
}
}
public static void main(String[] args) {
launch(args);
}
}
上記のコードは、テキストが収まるサイズの正方形のボタンを作成します。
出力:
著者: Sheeraz Gul
Sheeraz is a Doctorate fellow in Computer Science at Northwestern Polytechnical University, Xian, China. He has 7 years of Software Development experience in AI, Web, Database, and Desktop technologies. He writes tutorials in Java, PHP, Python, GoLang, R, etc., to help beginners learn the field of Computer Science.
LinkedIn Facebook