这是JavaFx应用程序代码的正确方法吗?

时间:2013-02-15 12:01:16

标签: javafx

我是JavaFX的新手。我想知道下面提供的代码是通过声明.fx文件来为JavaFX应用程序编写代码的好方法。

我们应该编写using.java文件。 在这方面需要帮助。

   import javafx.stage.Stage;
   import javafx.scene.Scene;
   import javafx.scene.Group;
   import javafx.scene.text.Text;

   import javafx.ext.swing.SwingLabel;
   import javafx.ext.swing.SwingTextField;
   import javafx.ext.swing.SwingButton;

   var login = false;
   var userName = "";
   var systemUser = "test";
   Stage {
    title : "Login App"
    scene: Scene {
        width: 300
        height: 300
        content: bind if(not login) Group{
                          content: [
                             SwingLabel{
                                 text: "User Name:"
                             },


                             SwingTextField {
                                 text : bind userName with inverse;
                                 columns : 10;
                                 editable : true;


                             },
                             SwingButton{
                                 translateX: 50
                                 translateY: 50
                                 text: "Submit"
                                 action: function(){
                                     if((userName != systemUser)) {
                                            println("Invalid UserName");

                                 }
                                 login = (userName == systemUser);
                                 }
                            }

                         ]
                     } 
                     else Group{
                         content: [

                   Text {
                                 x: 10 y: 30
                                 content: "You have successfully logged in."
                              },
                              SwingButton{
                                 translateX: 10
                                 translateY: 50
                                 text: "Log out"
                                 action: function(){
                                  userName = "";
                                  login = false;
                                }
                              }

                      ]
                  }
                } 
    }

1 个答案:

答案 0 :(得分:3)

您问题中的JavaFX脚本代码(带.fx文件)来自过时的JavaFX 1.x分支。 我强烈建议您不要使用JavaFX 1.x分支。甲骨文将在本月放弃对它的所有支持。

您的问题中的脚本代码还集成了JavaFX中的Swing控件,这在当前的JavaFX 2.x版本中不受支持。

相反,使用JavaFX 2+并使用JavaFX控件和没有Swing控件在Java(带.java文件)中编写JavaFX代码。

有一些优秀的教程可以帮助您入门: