javafx是一款比较新兴的语言框架,随着javafx越来越实用,估计许多程序员也会慢慢接触它,故我在这里对它由浅到深进行介绍一下.

首先,要了解javafx,就应该先知道.xml文件的布局软件,以往java都是通过敲代码来进行布局的,但javafx有力新的突破,它实现了拖动方式,目前我使用的辅助软件是JavaFX Scene Builder 2.0,故这一篇文章我主要首先介绍一下JavaFX Scene Builder 2.0这款软件,希望对大家有所帮助.

打开JavaFX Scene Builder 2.0软件,我们可以看到三大块,第一块是布局所需的元素集合,第二块是布局的位置,第三块是属性的一些设置,下面对这三块我来一一介绍.

一. 布局元素
   1.
containers容器一栏,在这一栏中有各种容器,所谓容器,就是用来装载其他按钮表格之类的一块区域,合理地利用容器,可以很好的进行布局,
 建议初学者将每个容器一一拖到布局位置进行查看它的效果,从而掌握每个容器应用到何处,其中Vbox以及Hbox是以后介绍页面正常全屏显示的    
     关键,请大家关注接下来的一些文章

2.
controls,控制器一栏,这一栏的元素存在的基础是有容器,控制器必须放在容器中,每个控制器都是自己独立的显示方式以及功能,lable文字标
签控制器,用来显示一些文字;button按钮控制器,用来做功能按钮;checkbox复选框,用来判断是否选择的选择框;choicebox,combobox,
         
文字选择器,用来选择下拉框中的文字;imageview图片加载器,用来放置图片(注意:实际编程时,改图片必须存放在该项目源文件夹中,与
            该.xml文
件处于同一目录下);pagination分页控件,与表格一起使用可以加载多页数据;tableview表格控件,可以在其中加载所需的数据,数    
      据源可以来自
于数据库;textfiled文本框控件,用于输入信息的,可以用来输入存储信息及查询信息等等,还有更多其他的控件,在以后会做更多        
的介绍,并且会介绍一些控件具体的程序实现。

二. 布局位置

1.
用鼠标将布局元素直接拖至这块区域,就可以看到所拖元素的展现形式,可以在这一调整元素的大小以及位置,并且温馨提示一下,如果你要使
用ctrl+v,那么你所粘贴的元素会出现在与你选中元素同一个容器中,即粘贴的元素与选中的元素是同一级别的。如果有一些误操作,建议使用      
      ctrl+z来进行恢复。

三. 属性

1.   properties基本属性块,editable选则是否可编辑,一般来说,对有输入型的控件比较适用,例如textfiled控件,如果可编辑状态没有打钩,那么
这个文本框就不可以输入值;disable是否可用的状态编辑,如果这一项打上钩,那么就会发现,这个元素正题颜色会变得暗淡,变现为不可用    
       
状态;visiable是否可见状态,如果这一项不打钩,就会发现这个元素在布局上没有了,貌似隐藏了,实际上就是将这个元素隐藏起来,并且不      
     
可用;cursor鼠标状态,主要用来设置鼠标移动到这个元素位置上时,鼠标显示的图标形状,通常一些功能按钮会设置成hand图标类型;style  
          风格设置,可以用来设置元素底色之类的。

2.
layout属性块,padding主要针对的是元素在布局中的位置,可以上下左右的位置进行相应的微调;接下来的height跟width这些属性将对Hbox及
Vbox的全屏显示布局显示至关重要,因此后面会涉及到全屏显示到底如何具体设置;接下来的xyz基本上就是设置元素在页面上位置的属性。

3. code属性块

fx:id
:这个主要是给这个元素设置一个ID,这个Id主要是为了能够清晰的在程序中辨别出各个元素,一般而言,基本上绝大部分元 素都是需要
 去辨别的,所以除了一些实在不需要作程序处理的元素,其他的都必须给一个Id,而且在同一个.XML文件中,一般每个元素对应的 id都不会      
     
     相同,id有着明确的指向性;

On Action触发事件:事件是ActionEvent,在这里设置一个触发函数名,然后在程序中给这个函数写入相 应的方法,这个事件 的触发是鼠标左  击这个元素就可以了;

On Key
Pressed触发事件:事件是KeyEvent,在这里设置一个触发函数,然后在程序中写入相应的方法,这是一个键盘按键触发事件,只要有
按钮按下就会触发,经常实现的就是Enter键触发事件的设置,在这个触发事件正增加一个判断是否为Enter键操作,即可实现按回车键进行      
 
         搜素的事件。

On Mouse
Clicked触发事件:事件是MouseEvent,在这里设置一个触发函数,然后在程序中写入相应的方法,这是一个鼠标触发事件,只要  
鼠标点击相应的元素(无论左击还是右击),就可以触发这个函数,当然,如果你不希望左右击都实现功能,则可以在这个函数中添加一个        
        鼠标左右击的判断事件,从而实现只有左击或右击实现功能,具体如何在程序中如何判断,以后会介绍。

On Mouse
Dragged触发事件:事件是MouseEvent,在这里设置一个触发函数,然后在程序中写入相应的方法,这是一个鼠标点击拖动事      
件,当鼠标点击按住不动开始拖动时,就不断地触发这个函数,这个触发事件可以做鼠标拖动页面的操作。

以上是经常会用到的一些触发事件,还有其他更多的触发事件,在这里就不作一一介绍了,有兴趣的同学可以自己去一一尝试其他触发事件的               作用。

这一期就写到这里,下一期将通过程序来具体介绍一些控件的具体操作以及设置。

原文地址:http://blog.csdn.net/z01014274/article/details/44101125

javafx由浅到深的 认识(一)的更多相关文章

  1. 浅入深出之Java集合框架(上)

    Java中的集合框架(上) 由于Java中的集合框架的内容比较多,在这里分为三个部分介绍Java的集合框架,内容是从浅到深,如果已经有java基础的小伙伴可以直接跳到<浅入深出之Java集合框架 ...

  2. 浅入深出之Java集合框架(中)

    Java中的集合框架(中) 由于Java中的集合框架的内容比较多,在这里分为三个部分介绍Java的集合框架,内容是从浅到深,如果已经有java基础的小伙伴可以直接跳到<浅入深出之Java集合框架 ...

  3. 浅入深出之Java集合框架(下)

    Java中的集合框架(下) 由于Java中的集合框架的内容比较多,在这里分为三个部分介绍Java的集合框架,内容是从浅到深,哈哈这篇其实也还是基础,惊不惊喜意不意外 ̄▽ ̄ 写文真的好累,懒得写了.. ...

  4. 浅入深出Vue:环境搭建

    浅入深出Vue:环境搭建 工欲善其事必先利其器,该搭建我们的环境了. 安装NPM 所有工具的下载地址都可以在导航篇中找到,这里我们下载的是最新版本的NodeJS Windows安装程序 下载下来后,直 ...

  5. 浅入深出Vue:工具准备之PostMan安装配置及Mock服务配置

    浅入深出Vue之工具准备(二):PostMan安装配置 由于家中有事,文章没顾得上.在此说声抱歉,这是工具准备的最后一章. 接下来就是开始环境搭建了~尽情期待 工欲善其事必先利其器,让我们先做好准备工 ...

  6. 浅入深出Vue:工具准备之WebStorm安装配置

    浅入深出Vue之工具准备(一):WebStorm安装配置 工欲善其事必先利其器,让我们先做好准备工作吧 导航篇 WebStorm安装配置 所有工具的下载地址都可以在导航篇中找到,这里我们下载的是最新版 ...

  7. 浅入深出Vue系列

    浅入深出Vue导航 导航帖,直接点击标题即可. 文中所有涉及到的资源链接均在最下方列举出来了. 前言 基础篇 浅入深出Vue:工具准备之WebStorm搭建及配置 浅入深出Vue之工具准备(二):Po ...

  8. 浅入深出Vue:前言

    浅入深出Vue系列文章 之前大部分是在做后端,后来出于某些原因开始接触Vue.深感前端变化之大,各种工具.框架令人眼花缭乱.不过正是这些变化,让前端开发更灵活. 博主在刚开始时,参考官网的各个步骤以及 ...

  9. Service由浅到深——AIDL的使用方式

    前言 最近有很多朋友问我这个AIDL怎么用,也许由于是工作性质的原因,很多人都没有使用过aidl,所以和他们讲解完以后,感觉对方也是半懂不懂的,所以今天我就从浅到深的分析一下这个aidl具体是怎么用的 ...

随机推荐

  1. TCPDUMP 使用教程

    TCPDUMP 命令使用简介 简单介绍 tcpdump 是一款强大的网络抓包工具,运行在 Linux 平台上.熟悉 tcpdump 的使用能够帮助你分析.调试网络数据. 要想很好地掌握 tcpdump ...

  2. 应用系统如何分析和获取SQL语句的执行代码

    大部分开发人员都有这样一个需求,在程序连接数据库执行时,有时需要获取具体的执行语句,以便进行相关分析,这次我向大家介绍一下通用权限管理系统提供的SQL语句执行跟踪记录,直接先看看代码吧:(这个功能我也 ...

  3. Vue打包优化之分析工具webpack-bundle-analyzer

    // 1. 安装 cnpm install webpack-bundle-analyzer --save-dev // 2. 在/build/webpack.prod.conf.js文件中引入 con ...

  4. ORACLE not available

    1 先看oracle的监听和oracle的服务是否都启动了. 启动oracle监听:cmd命令行窗口下,输入lsnrctl start,回车即启动监听. 2 查看oracle的sid叫什么,比如创建数 ...

  5. vs 开发 win32 程序,调出控制台窗口,方便调试

    设置方法 项目 -> 属性 -> 生成事件 ->后期生成事件 -> 命令行 中添加 editbin /SUBSYSTEM:CONSOLE $(OutDir)\$(Project ...

  6. openssl实现自签名证书

    前言 证书的作用 加密通信数据,验证对象身份,保证数据完整性 什么是自签名证书 公认的证书往往都需要收费,如果客户端与服务端都是由我们自己来操控,那便可以使用自签名证书(说白了就是只是自己认可的证书) ...

  7. fastjson存在乱序的问题

    现象及原因 通常来讲,在使用json数据格式时一般不需要要求数据有序.但凡事都有例外,针对查询时序数据这样一个场景,就必须要求服务器端返回的数据是按时间有序的,否则前端在进行数据展示时就会有问题. 项 ...

  8. work behind corp proxy

    =================================proxy 的写法=================================一般写法是: http://my.proxy.ad ...

  9. 更改checkbox的默认样式

    最近做一个vue项目要用到checkbox要修改默认样式,选中是纯白色,不选择只有白色边框,起初以为很容易,没想到还折腾了一翻,记录一下. 几经折腾,理清input 和label的关系 最终改进版本, ...

  10. angular Observable

    1.回调函数 /** 1.设计实现函数 */ print_msg(msg) { console.log(msg); } /** 2.设计调用函数,param1:实现函数参数,param2:实现函数本身 ...