الوقت/التاريخ الآن هو الجمعة مايو 10, 2024 12:53 pm
1 نتيجة بحث عن 333
[JavaFx] برنامج كاشف عناوين المواقع و الأجهزة IP Finder
طريقة إنشاء برنامج (IP Finder ) و الذي يمكن إستخدامه لجلب عنوان أي شيء متصل بالنت سواء كان سيرفر, حاسوب, هاتف إلخ..import java.net.InetAddress;
import java.net.UnknownHostException;
import javafx.application.Application;
import javafx.geometry.Pos;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.TextField;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.scene.layout.Pane;
import javafx.scene.paint.Color;
import javafx.stage.Stage;
public class Main extends Application {
// هنا قمنا بتعريف الأشياء التي سيتم وضعها في النافذة
Pane backgroundPane;
ImageView imageView;
Label label, labelResult, labelDevelopedBy;
TextField textField;
Button buttonFind;
@Override
public void start(Stage stage) {
// هنا قمنا بإنشاء جميع الأشياء التي سنضيفها في النافذة
backgroundPane = new Pane();
imageView = new ImageView(new Image(getClass().getResourceAsStream("/images/world-map.png")));
label = new Label("Enter Domain");
textField = new TextField();
buttonFind = new Button("Get IP");
labelResult = new Label("");
labelDevelopedBy = new Label("Developed by harmash.com");
// هنا قمنا بتحديد حجم كل شيء سيتم إضافته في الحاوية الرئيسية التي سنضعها في النافذة
backgroundPane.setPrefSize(600, 340);
imageView.setFitWidth(620);
imageView.setFitHeight(360);
label.setPrefSize(200, 30);
textField.setPrefSize(200, 36);
buttonFind.setPrefSize(200, 36);
labelResult.setPrefSize(600, 30);
labelDevelopedBy.setPrefSize(600, 30);
// هنا قمنا بتحديد مكان ظهور كل شيء سيتم إضافته في الحاوية الرئيسية التي سنضعها في النافذة
label.setTranslateX(200);
label.setTranslateY(75);
textField.setTranslateX(200);
textField.setTranslateY(115);
buttonFind.setTranslateX(200);
buttonFind.setTranslateY(165);
labelResult.setTranslateX(0);
labelResult.setTranslateY(225);
labelDevelopedBy.setTranslateX(0);
labelDevelopedBy.setTranslateY(300);
// يظهر في وسطهم labelDevelopedBy و labelResult ,textField ,label هنا قمنا بجعل نص الكائنات
label.setAlignment(Pos.CENTER);
textField.setAlignment(Pos.CENTER);
labelResult.setAlignment(Pos.CENTER);
labelDevelopedBy.setAlignment(Pos.CENTER);
// ( نوع خطه, حجمه, سمكه, لونه ) label هنا قمنا يتعديل تصميم الكائن
label.setStyle(
"-fx-font-family: Arial;"
+ "-fx-font-size: 20px;"
+ "-fx-text-fill: white;"
+ "-fx-font-weight: bold;"
);
// ( نوع خطه, حجمه, سمكه, لونه, مع تحديد لون و سمك حدوده و لون خلفيته ) textField هنا قمنا يتعديل تصميم الكائن
textField.setStyle(
"-fx-font-family: Arial;"
+ "-fx-font-size: 16px;"
+ "-fx-text-fill: lightgrey;"
+ "-fx-border-color: gray;"
+ "-fx-border-style: solid;"
+ "-fx-border-width: 2px;"
+ "-fx-background-color: black;"
);
// ( نوع خطه, حجمه, سمكه, لونه, مع تحديد لون و سمك حدوده و لون خلفيته ) buttonFind هنا قمنا يتعديل تصميم الكائن
buttonFind.setStyle(
"-fx-font-family: Arial;"
+ "-fx-font-size: 16px;"
+ "-fx-text-fill: lightgrey;"
+ "-fx-border-color: gray;"
+ "-fx-border-style: solid;"
+ "-fx-border-width: 2px;"
+ "-fx-background-color: #333;"
+ "-fx-cursor: hand;"
);
// ( نوع خطه, حجمه, سمكه ) labelResult هنا قمنا يتعديل تصميم الكائن
labelResult.setStyle(
"-fx-font-family: Arial;"
+ "-fx-font-size: 18px;"
+ "-fx-font-weight: bold;"
);
// ( نوع خطه, حجمه, سمكه, لونه ) labelDevelopedBy هنا قمنا يتعديل تصميم الكائن
labelDevelopedBy.setStyle(
"-fx-font-family: Arial;"
+ "-fx-font-size: 16px;"
+ "-fx-text-fill: Blue;"
+ "-fx-font-weight: bold;"
);
// buttonFind هنا قمنا بتحديد ما سيحدث عند النقر على الكائن
buttonFind.setOnAction((ActionEvent) -> {
// url سيتم تخزين النص الموجود في مربع النص في الكائن
String url = textField.getText();
// labelResult إذا لم يكن مربع النص فارغاً سيحاول البرنامج الإتصال بالنت و جلب عنوان الموقع المذكور و وضعه كنص للكائن
if (!url.isEmpty()) {
try {
InetAddress address = InetAddress.getByName(url);
String ip = address.getHostAddress();
labelResult.setText(ip);
labelResult.setTextFill(Color.GREEN);
}
catch (UnknownHostException ex) {
labelResult.setText("Invalid URL or Network is Down");
labelResult.setTextFill(Color.RED);
}
}
// إذا كان مربع النص فارغاً عند النقر على الزر, سيتم إظهار النص التالي و تلوينه بالأحمر
else {
labelResult.setText("Please enter a valid URL in the above field");
labelResult.setTextFill(Color.RED);
}
});
// في النافذة Root Node و الذي ننوي جعله الـ Group هنا قمنا بإنشاء كائن من الكلاس
Group root = new Group();
// هنا قمنا بإضافة جميع الأشياء التي قمنا بإنشائها في النافذة
root.getChildren().add(backgroundPane);
root.getChildren().add(imageView);
root.getChildren().add(label);
root.getChildren().add(textField);
root.getChildren().add(buttonFind);
root.getChildren().add(labelResult);
root.getChildren().add(labelDevelopedBy);
// فيها و تحديد حجمها Node كأول root هنا قمنا بإنشاء محتوى النافذة مع تعيين الكائن
Scene scene = new Scene(root, 600, 340);
// هنا وضعنا عنوان للنافذة
stage.setTitle("Ip Finder");
// أي وضعنا محتوى النافذة الذي قمنا بإنشائه للنافذة .stage في كائن الـ scene هنا وضعنا كائن الـ
stage.setScene(scene);
// هنا قمنا بإظهار النافذة
stage.show();
// هنا جعلنا المستخدم غير قادر على تكبير أو تصغير حجم النافذة بنفسه
stage.setResizable(false);
}
// هنا قمنا بتشغيل التطبيق
public static void main(String[] args) {
launch(args);
}
}
- في الإثنين سبتمبر 11, 2023 12:49 pm
- ابحث في: أساسيات اللغة Java Basics
- موضوع: [JavaFx] برنامج كاشف عناوين المواقع و الأجهزة IP Finder
- المساهمات: 0
- مشاهدة: 204
اليوم في 5:56 am من طرف wdqwd
» افضل شركة تنظيف شقق بالرياض
أمس في 5:54 pm من طرف moslema_r
» تطبيق جوال لصيانة المكيفات
الأربعاء مايو 08, 2024 6:58 am من طرف mona mohamed
» مظلات وسواتر الرياض
الثلاثاء مايو 07, 2024 7:47 pm من طرف moslema_r
» شركة تنظيف فلل بالرياض
الثلاثاء مايو 07, 2024 6:55 pm من طرف moslema_r
» شركة تنظيف كنب بالرياض
الأحد مايو 05, 2024 6:56 pm من طرف moslema_r
» مظلات وسواتر
السبت مايو 04, 2024 8:58 pm من طرف moslema_r
» شركة تنظيف خزانات بالرياض
الخميس مايو 02, 2024 6:10 pm من طرف moslema_r
» افضل شركة رش مبيدات بالرياض
الإثنين أبريل 29, 2024 9:00 pm من طرف moslema_r
» ارخص شركة مكافحة الصراصير بالرياض
الخميس أبريل 25, 2024 8:56 pm من طرف moslema_r