Programming Basics SQL HTML CSS JavaScript Python C++ Java JavaFX Swing Problem Solving English English Conversations Computer Fundamentals Learn Typing

JavaFXطريقة إضافة أيقونة للـ Label مع تحديد مكان ظهورها

المثال التالي يعلمك طريقة إضافة أيقونة للـ Label مع تحديد مكان ظهورها.


ملاحظة: عليك إنشاء مجلد و وضع الأيقونة التي تريد وضعها للـ Label بداخله كما في الصورة التالية.

الصورة توضح أننا أضفنا مجلد إسمه images و وضعنا فيه صورة إسمها smily-face.png.

⇓ تحميل مجلد الصور


مثال

Main.java
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.ContentDisplay;
import javafx.scene.control.Label;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.stage.Stage;
public class Main extends Application {
@Override
public void start(Stage stage) {
// يمثل الصورة التي سنضعها كأيقونة Image هنا قمنا بإنشاء كائن من الكلاس
Image image = new Image(getClass().getResourceAsStream("/images/smily-face.png"));
// مع وضع نص و أيقونة لكل كائن منهم Label هنا قمنا بإنشاء 7 كائنات من الكلاس
Label label_1 = new Label("Label 1", new ImageView(image));
Label label_2 = new Label("Label 2", new ImageView(image));
Label label_3 = new Label("Label 3", new ImageView(image));
Label label_4 = new Label("Label 4", new ImageView(image));
Label label_5 = new Label("Label 5", new ImageView(image));
Label label_6 = new Label("Label 6", new ImageView(image));
Label label_7 = new Label("Label 7", new ImageView(image));
// قمنا بإنشائه Label هنا قمنا بتحديد مكان ظهور الأيقونة بالنسبة لكل
label_1.setContentDisplay(ContentDisplay.LEFT); // هنا وضعنا الصورة يسار النص
label_2.setContentDisplay(ContentDisplay.BOTTOM); // هنا وضعنا الصورة فوق النص
label_3.setContentDisplay(ContentDisplay.TOP); // هنا وضعنا الصورة تحت النص
label_4.setContentDisplay(ContentDisplay.RIGHT); // هنا وضعنا الصورة يمين النص
label_5.setContentDisplay(ContentDisplay.CENTER); // هنا وضعنا النص على الصورة
label_6.setContentDisplay(ContentDisplay.GRAPHIC_ONLY); // هنا قمنا بإظهار الصورة فقط
label_7.setContentDisplay(ContentDisplay.TEXT_ONLY); // هنا بإظهار النص فقط
// في النافذة label_1 هنا قمنا بتحديد مكان ظهور الكائن
label_1.setTranslateX(20);
label_1.setTranslateY(50);
// في النافذة label_2 هنا قمنا بتحديد مكان ظهور الكائن
label_2.setTranslateX(170);
label_2.setTranslateY(50);
// في النافذة label_3 هنا قمنا بتحديد مكان ظهور الكائن
label_3.setTranslateX(280);
label_3.setTranslateY(50);
// في النافذة label_4 هنا قمنا بتحديد مكان ظهور الكائن
label_4.setTranslateX(390);
label_4.setTranslateY(50);
// في النافذة label_5 هنا قمنا بتحديد مكان ظهور الكائن
label_5.setTranslateX(80);
label_5.setTranslateY(200);
// في النافذة label_6 هنا قمنا بتحديد مكان ظهور الكائن
label_6.setTranslateX(230);
label_6.setTranslateY(200);
// في النافذة label_7 هنا قمنا بتحديد مكان ظهور الكائن
label_7.setTranslateX(370);
label_7.setTranslateY(200);
// في النافذة Root Node لأننا ننوي جعله الـ Group هنا قمنا بإنشاء كائن من الكلاس
Group root = new Group();
// root في الكائن Labels هنا قمنا بإضافة جميع الـ
root.getChildren().add(label_1);
root.getChildren().add(label_2);
root.getChildren().add(label_3);
root.getChildren().add(label_4);
root.getChildren().add(label_5);
root.getChildren().add(label_6);
root.getChildren().add(label_7);
// فيها و تحديد حجمها Node كأول root هنا قمنا بإنشاء محتوى النافذة مع تعيين الكائن
Scene scene = new Scene(root, 500, 300);
// هنا وضعنا عنوان للنافذة
stage.setTitle("JavaFX Label");
// أي وضعنا محتوى النافذة الذي قمنا بإنشائه للنافذة .stage في كائن الـ scene هنا وضعنا كائن الـ
stage.setScene(scene);
// هنا قمنا بإظهار النافذة
stage.show();
}
// هنا قمنا بتشغيل التطبيق
public static void main(String[] args) {
launch(args);
}
}
import javafx.application.Application; import javafx.scene.Group; import javafx.scene.Scene; import javafx.scene.control.ContentDisplay; import javafx.scene.control.Label; import javafx.scene.image.Image; import javafx.scene.image.ImageView; import javafx.stage.Stage; public class Main extends Application { @Override public void start(Stage stage) { // يمثل الصورة التي سنضعها كأيقونة Image هنا قمنا بإنشاء كائن من الكلاس Image image = new Image(getClass().getResourceAsStream("/images/smily-face.png")); // مع وضع نص و أيقونة لكل كائن منهم Label هنا قمنا بإنشاء 7 كائنات من الكلاس Label label_1 = new Label("Label 1", new ImageView(image)); Label label_2 = new Label("Label 2", new ImageView(image)); Label label_3 = new Label("Label 3", new ImageView(image)); Label label_4 = new Label("Label 4", new ImageView(image)); Label label_5 = new Label("Label 5", new ImageView(image)); Label label_6 = new Label("Label 6", new ImageView(image)); Label label_7 = new Label("Label 7", new ImageView(image)); // قمنا بإنشائه Label هنا قمنا بتحديد مكان ظهور الأيقونة بالنسبة لكل label_1.setContentDisplay(ContentDisplay.LEFT); // هنا وضعنا الصورة يسار النص label_2.setContentDisplay(ContentDisplay.BOTTOM); // هنا وضعنا الصورة فوق النص label_3.setContentDisplay(ContentDisplay.TOP); // هنا وضعنا الصورة تحت النص label_4.setContentDisplay(ContentDisplay.RIGHT); // هنا وضعنا الصورة يمين النص label_5.setContentDisplay(ContentDisplay.CENTER); // هنا وضعنا النص على الصورة label_6.setContentDisplay(ContentDisplay.GRAPHIC_ONLY); // هنا قمنا بإظهار الصورة فقط label_7.setContentDisplay(ContentDisplay.TEXT_ONLY); // هنا بإظهار النص فقط // في النافذة label_1 هنا قمنا بتحديد مكان ظهور الكائن label_1.setTranslateX(20); label_1.setTranslateY(50); // في النافذة label_2 هنا قمنا بتحديد مكان ظهور الكائن label_2.setTranslateX(170); label_2.setTranslateY(50); // في النافذة label_3 هنا قمنا بتحديد مكان ظهور الكائن label_3.setTranslateX(280); label_3.setTranslateY(50); // في النافذة label_4 هنا قمنا بتحديد مكان ظهور الكائن label_4.setTranslateX(390); label_4.setTranslateY(50); // في النافذة label_5 هنا قمنا بتحديد مكان ظهور الكائن label_5.setTranslateX(80); label_5.setTranslateY(200); // في النافذة label_6 هنا قمنا بتحديد مكان ظهور الكائن label_6.setTranslateX(230); label_6.setTranslateY(200); // في النافذة label_7 هنا قمنا بتحديد مكان ظهور الكائن label_7.setTranslateX(370); label_7.setTranslateY(200); // في النافذة Root Node لأننا ننوي جعله الـ Group هنا قمنا بإنشاء كائن من الكلاس Group root = new Group(); // root في الكائن Labels هنا قمنا بإضافة جميع الـ root.getChildren().add(label_1); root.getChildren().add(label_2); root.getChildren().add(label_3); root.getChildren().add(label_4); root.getChildren().add(label_5); root.getChildren().add(label_6); root.getChildren().add(label_7); // فيها و تحديد حجمها Node كأول root هنا قمنا بإنشاء محتوى النافذة مع تعيين الكائن Scene scene = new Scene(root, 500, 300); // هنا وضعنا عنوان للنافذة stage.setTitle("JavaFX Label"); // أي وضعنا محتوى النافذة الذي قمنا بإنشائه للنافذة .stage في كائن الـ scene هنا وضعنا كائن الـ stage.setScene(scene); // هنا قمنا بإظهار النافذة stage.show(); } // هنا قمنا بتشغيل التطبيق public static void main(String[] args) { launch(args); } }

ستظهر لك النافذة التالية عند التشغيل.

طريقة إضافة أيقونة للـ Label مع تحديد مكان ظهورها في javafx