javafx 表单

在本教程中,我将使用JavaFX 2和CSS设计一个外观漂亮的Login Form 。 它是经典的登录表单,带有用户名和密码以及登录按钮。 为了遵循本教程,我强烈建议您查看以下这些教程:

  • Eclipse IDE中的JavaFX 2入门
  • JavaFX 2:HBox
  • JavaFX 2:GridPane
  • JavaFX 2:样式按钮
  • JavaFX 2:使用文本和文本效果

用户名: JavaFX2 密码:密码

您可以在上方输入此信息,然后单击“登录”按钮。 它会提示您登录成功,但是如果输入错误信息,则会提示您登录不成功。
本教程的最终输出屏幕截图如下图所示。

JavaFX 2登录表单

这是我们示例的Java代码:

import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.geometry.Insets;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.PasswordField;
import javafx.scene.control.TextField;
import javafx.scene.effect.DropShadow;
import javafx.scene.effect.Reflection;
import javafx.scene.layout.BorderPane;
import javafx.scene.layout.GridPane;
import javafx.scene.layout.HBox;
import javafx.scene.paint.Color;
import javafx.scene.text.Font;
import javafx.scene.text.FontWeight;
import javafx.scene.text.Text;
import javafx.stage.Stage;/**** @web http://zoranpavlovic.blogspot.com/*/
public class Login extends Application {String user = "JavaFX2";String pw = "password";String checkUser, checkPw;public static void main(String[] args) {launch(args);}@Overridepublic void start(Stage primaryStage) {primaryStage.setTitle("JavaFX 2 Login");BorderPane bp = new BorderPane();bp.setPadding(new Insets(10,50,50,50));//Adding HBoxHBox hb = new HBox();hb.setPadding(new Insets(20,20,20,30));//Adding GridPaneGridPane gridPane = new GridPane();gridPane.setPadding(new Insets(20,20,20,20));gridPane.setHgap(5);gridPane.setVgap(5);//Implementing Nodes for GridPaneLabel lblUserName = new Label("Username");final TextField txtUserName = new TextField();Label lblPassword = new Label("Password");final PasswordField pf = new PasswordField();Button btnLogin = new Button("Login");final Label lblMessage = new Label();//Adding Nodes to GridPane layoutgridPane.add(lblUserName, 0, 0);gridPane.add(txtUserName, 1, 0);gridPane.add(lblPassword, 0, 1);gridPane.add(pf, 1, 1);gridPane.add(btnLogin, 2, 1);gridPane.add(lblMessage, 1, 2);//Reflection for gridPaneReflection r = new Reflection();r.setFraction(0.7f);gridPane.setEffect(r);//DropShadow effect DropShadow dropShadow = new DropShadow();dropShadow.setOffsetX(5);dropShadow.setOffsetY(5);//Adding text and DropShadow effect to itText text = new Text("JavaFX 2 Login");text.setFont(Font.font("Courier New", FontWeight.BOLD, 28));text.setEffect(dropShadow);//Adding text to HBoxhb.getChildren().add(text);//Add ID's to Nodesbp.setId("bp");gridPane.setId("root");btnLogin.setId("btnLogin");text.setId("text");//Action for btnLoginbtnLogin.setOnAction(new EventHandler() {public void handle(ActionEvent event) {checkUser = txtUserName.getText().toString();checkPw = pf.getText().toString();if(checkUser.equals(user) && checkPw.equals(pw)){lblMessage.setText("Congratulations!");lblMessage.setTextFill(Color.GREEN);}else{lblMessage.setText("Incorrect user or pw.");lblMessage.setTextFill(Color.RED);}txtUserName.setText("");pf.setText("");}});//Add HBox and GridPane layout to BorderPane Layoutbp.setTop(hb);bp.setCenter(gridPane);  //Adding BorderPane to the scene and loading CSSScene scene = new Scene(bp);scene.getStylesheets().add(getClass().getClassLoader().getResource("login.css").toExternalForm());primaryStage.setScene(scene);primaryStage.titleProperty().bind(scene.widthProperty().asString().concat(" : ").concat(scene.heightProperty().asString()));//primaryStage.setResizable(false);primaryStage.show();}
}

为了正确设置此应用程序的样式,您需要在项目的/ src文件夹中创建login.css文件。 如果您不知道该怎么做,请查看JavaFX 2:样式按钮教程 。

这是我们示例CSS代码:

#root {-fx-background-color:  linear-gradient(lightgray, gray);-fx-border-color: white;-fx-border-radius: 20;-fx-padding: 10 10 10 10;-fx-background-radius: 20;}#bp {-fx-background-color:  linear-gradient(gray,DimGrey );}#btnLogin {-fx-background-radius: 30, 30, 29, 28;-fx-padding: 3px 10px 3px 10px;-fx-background-color: linear-gradient(orange, orangered );
}#text {-fx-fill:  linear-gradient(orange , orangered);
}

多数民众赞成在本教程中,如果您有任何意见或问题,请随时发表评论。 如果您喜欢本教程,则可以在此博客上查看更多JavFX 2教程。

您可能想看一下下面的这些教程:

  • JavaFX 2:使用CSS设置按钮样式
  • JavaFX 2:使用CSS设置文本样式

参考: JavaFX 2:在Zoran Pavlovic博客博客中,从我们的JCG合作伙伴 Zoran Pavlovic 创建尼斯登录表单 。

翻译自: https://www.javacodegeeks.com/2012/06/in-this-tutorial-i-will-design-nice.html

javafx 表单

javafx 表单_JavaFX 2:创建登录表单相关推荐

  1. JavaFX 2:创建登录表单

    在本教程中,我将使用JavaFX 2和CSS设计漂亮的Login Form . 它是经典的登录表单,带有用户名和密码以及登录按钮. 为了遵循本教程,我强烈建议您查看以下这些教程: Eclipse ID ...

  2. SharePoint创建登录表单

    2019独角兽企业重金招聘Python工程师标准>>> SharePoint其实是微软frontpage的升级版,现在已经改为webmatix,不过webmatrix要占用很多内存 ...

  3. mysql外连接基准表_4.mysql数据库创建,表创建模等模板脚本,mysql_SQL99标准的连接查询(内连接,外连接,满外连接,交叉连接)...

     mysql数据库创建,表创建模等模板脚本 --用root用户登录系统,执行脚本 --创建数据库 create database mydb61 character set utf8 ; --选择数 ...

  4. 如何在linux下创建表空间,linux下创建oracle表空间

    来自:http://blog.sina.com.cn/s/blog_62192aed01018aep.html 1 . 登录服务器 2 . 查看磁盘空间是否够大df -h -h更具目前磁盘空间和使用情 ...

  5. html 数据库 编写学生表,用sql语句创建学生表如何做

    在数据库中使用SQL语句创建学生表代码如下:( 学号 char(12) primary key, 姓名 char(6) not null, 性别 char(2) check(性别 IN ('男','女 ...

  6. oracle使用sql文件创建表,使用SQL*Loader创建外部表之一

    使用SQL*Loader创建外部表: ---创建目录对象并授权给Scott用户: SQL> create or replace directory loader_home as '/home/o ...

  7. linux pdb创建表空间,ORACLE12C PDB创建默认表空间和用户语句(示例代码)

    第一次接触到12C CDB和PDB数据库,且客户提供的是ORACLE一体机,只有访问权,费劲周折,今记录12C创建默认路径表空间语句和用户 --创建默认表空间: create tablespace t ...

  8. mysql建立修改表存储过程_MySQL数据库创建、表的创建、存储过程、触发器

    一.基本内容 (1) 使用SQL语句创建数据库: (2) 为数据库分配管理权限: (3) 定义表和数据库的完整性,student(学生表),course(课程表)和 sc(学生选课表), 并设置各个表 ...

  9. php语句创建数据表,用mysql语句创建数据表详细教程

    MySQL不仅用于表数据操纵,而且还可以用来执行数据库和表的所有操作,包括表本身的创建和处理. 一般有两种创建表的方法: 1.使用具有交互式创建和管理表的工具: 2.表也可以直接用MySQL语句操纵. ...

最新文章

  1. 安装eAccelerator
  2. ArcGIS Server 简介
  3. (史上最全)104个实用网络爬虫合集。
  4. Docker容器的root用户
  5. 数据图表可视化_数据可视化如何选择正确的图表第1部分
  6. codeforce 884C - Bertown Subway DFS+图论
  7. 【软件质量】软件可维护性
  8. oracle 之 内存—鞭辟近里(一)
  9. vue后端框架mysql_vue框架之前后台交互、element-ui
  10. 开发里程碑计划_如何通过里程碑控制项目进度
  11. 如何选指数基金?何时买入指数基金?长投温度如何计算?
  12. photoshop改变图片大小,不改变像素
  13. discard python_Python学习第三天
  14. js 导出Excel文件乱码问题
  15. 注释 护眼色 绿色 RGB
  16. 基于AChartEngine绘制股票走势图----分时图二(五日,涨跌涨跌幅)
  17. ubuntu服务器基本安全配置
  18. 7.3 使用“设计视图”创建报表
  19. MIUI系统手机实现WLAN热点桥接
  20. Win10系统下CMD命令提示符输入ipconfig命令无法使用的解决方法

热门文章

  1. Java 8新特性探究(二)深入解析默认方法
  2. Java数组,字符串
  3. Safari浏览器不支持……
  4. excel趋势线公式导出_如何用Excel进行预测分析?
  5. Spring中@Autowired、@Qualifier、@Resource的区别
  6. removeAll throws java.lang.UnsupportedOperationException
  7. apache.camel_Apache Camel 2.23发布
  8. 子模板继承父模板示例_模板设计模式示例
  9. 突破极限–如何使用AeroGear Unified Push for Java EE和Node.js
  10. Java 9中的HTTP / 2支持简介