点击 ImageView 调整窗口。
Javafx几种典型的布局是FlowPane面板它采用的布局策略是,按照控件的添加次序按个摆放,按照从上到下,从左到右的次序摆放,当窗口的大小发生变化后,场景的大小也自动跟着变化,面板的大小也跟着变化,并且会重新计算各个控件的位置,重新摆放各个控件的位置,GridPane面板它采用的布局策略是,将整个面板划分为若干个格子,每个格子的大小是一样的,每个格子中可以放置一个控件,类似于表格的方式。
历史回顾: 在浏览器出现的早期 , 有一个交互的应用程序在网页上跑, 还是很拉风的, 所以Applet 也稍微风光过, 可是后来被Flash打败了, 再后来双双败于HTML5 由于性能问题,安全问题, 很多浏览器都禁止了Applet 甚至Flash 的运行了 现在要开发网页应用 还是学好Html, JS, CSS拥抱HTML5 吧
解释: Java9 把 javaappletApplet 注解成了废弃的类了; 原则上就是不建议使用了, 后面的版本中这个类很可能就会被删除
解决方案一: 使用java 9以下的版本, 比如Java 8就不会看到这个提示了(这是掩耳盗铃!!)
解决方案二: 放弃使用java 编写 网页应用程序 使用HTML CSS JavaScript
学习建议: java图形界面学习建议; 放弃网页应用的技术,比如Applet或者JApplet; 但是要关注下java的桌面客户端技术 ,可以简单学习 awt,Swing 重点学习 JavaFX ;特别是javaFX特别优秀, 但是JavaFX错过了桌面客户端的黄金时代, 现在是移动互联网的黄金时代但是javaFX可以编写很多行业软件(比如 航空,电力, 科研)或者自己用的小程序(阅读器, 数据库应有,游戏 )
拓展: 使用@Deprecated 即可把类或者方法注解为废弃的, 不建议使用的;参考代码如下
//Deprecated注解: 表示此类已经被废弃@Deprecated
public class Test{ //(在Eclipse里看到就会出现文字中间有横线)
public static void main(String[] args) {
Test test=new Test();
testsayHello();
}
//Deprecated注解: 表示此方法已经被废弃
@Deprecated
public void sayHello(){
Systemoutprintln("Hello");
}
}
感觉要是你们团队成员不排斥的话,还是可以学习一下的,毕竟像Swing用代码写GUI已经不常见了吧,主流的web、android等都是标记语言写外观,代码控制逻辑。
用javafx写比用Swing不一定轻松,但是写出来还是比Swing要逻辑分明一些,而且javafx上可以绑定数据,响应的代码写起来也比Swing省力。
javafx音频频谱数据绑定动画的方法:
添加import static javalangMathrandom,到import语句列表中,就可以绑定动画了。
动画由时间轴驱动,因此此代码创建时间轴,然后使用for循环向30个圆中的每一个添加两个关键帧。0秒处的第一个关键帧使用属性translateXProperty并translateYProperty在窗口内设置圆圈的随机位置。40秒的第二个关键帧也是如此。
因此,当播放时间线时,它在40秒的时间段内将所有圆圈从一个随机位置动画到另一个随机位置。
注意javafx的动画需要设置路径和节点进行绑定,但如果路径的属性绑定在设置路径之前,就会使得该路径的属性被设置成绑定属性的初始值。
采用JavaFX组件完成的一款小巧、界面精美的本地音乐播放器,支持(拖动 or 文件选择器)添加本地音乐。
歌曲以及删除它们、具有歌词文件解析、三种播放模式选择、歌词滚动、歌单列表控制、频谱图展示、歌词海报显示、自定义背景、系统托盘控制、一些快捷键等。同时使用ini文件记录应用设置信息,数据库用sqlite。
主要功能清单:
支持系统托盘控制和全屏控制。
界面简洁而精美且支持自定义背景。
支持播放的音乐格式:mp3 文件、wav 文件、aac 文件。
支持解析歌词并展示。
支持解析歌词文件(缩略图、专辑、时长等)。
支持频谱图动效。
支持拖动添加文件。
支持歌单列表控制。
在Java中,ObservableValue 是一个接口,它是 JavaFX 库中的一部分。ObservableValue 是一个用于表示可观察的值的接口,它允许开发者在 JavaFX 应用程序中实现数据绑定和监听。在 JavaFX 中,ObservableValue 是一个非常常用的接口,它用于跟踪一个值的变化,并在值发生变化时通知监听者。
ObservableValue 接口定义了以下几个主要的方法:
addListener(ChangeListener< super T> listener):向 ObservableValue 添加一个值变化的监听器。
removeListener(ChangeListener< super T> listener):从 ObservableValue 移除一个值变化的监听器。
getValue():获取当前的值。
addInvalidationListener(InvalidationListener listener):向 ObservableValue 添加一个无效化监听器。
removeInvalidationListener(InvalidationListener listener):从 ObservableValue 移除一个无效化监听器。
invalidated():通知所有的无效化监听器,值已经无效。
通过使用 ObservableValue,您可以创建一个可以观察的属性,并在属性值发生变化时自动通知相关的监听器。这在实现数据绑定、MVC(Model-View-Controller)模式以及其他需要监听属性值变化的场景中非常有用。
目前常用的一些前端的框架如下:
1Bootstrap
Boostrap绝对是目前最流行用得最广泛的一款框架。它是一套优美,直观并且给力的web设计工具包,可以用来开发跨浏览器兼容并且美观大气的页面。它提供了很多流行的样式简洁的UI组件,栅格系统以及一些常用的JavaScript插件。
Bootstrap是用动态语言LESS写的,主要包括四部分的内容:
脚手架——全局样式,响应式的12列栅格布局系统。记住Bootstrap在默认情况下并不包括响应式布局的功能。因此,如果你的设计需要实现响应式布局,那么你需要手动开启这项功能。
基础CSS——包括基础的HTML页面要素,比如表格(table),表单(form),按钮(button),以及(image),基础CSS为这些要素提供了优雅,一致的多种样式。
组件——收集了大量可以重用的组件,如下拉菜单(dropdowns),按钮组(buttongroups),导航面板(navigationcontrol)——包括:tabs,pills,lists标签,面包屑导航(breadcrumbs)以及页码(pagination),缩略图(thumbnails),进度条(progressbars),媒体对象(mediaobjects)等等。
JavaScript——包括一系列jQuery的插件,这些插件可以实现组件的动态页面效果。插件主要包括模态窗口(modals),提示效果(tooltips),“泡芙”效果(popovers),滚动监控(scrollspy),旋转木马(carousel),输入提示(typeahead),等等。
Bootstrap已经足够强大,能够实现各种形式的Web界面。为了更加方便地利用Bootstrap进行开发,很多工具和资源可以用来配合使用,下面列举了其中的一部分工具和资源。
jQueryUIBootstrap——对于jQuery和Bootstrap爱好者来说这是个非常好的资源,能够把Bootstrap的清爽界面组件引入到jQueryUI中。
jQueryMobileBootstrapTheme——和上面提到的jQueryUI主题类似,这是一个为jQuerymobile建立的主题。如果你想让用Bootstrap开发的网站在手机端也可以优雅访问,那么这个资源对你来说很方便易用。
FuelUX——它为Bootstrap添加了一些轻量的JavaScript控件。FuelUI安装,修改,更新以及优化都很简单方便。
info——Bootstrap提供了自己的几种界面风格,提供了更多的配色选项,并且你可以给每个组件都应用不同的配色。
BootSwatchr——利用这个工具你可以立刻查看主题修改后的效果。对于每一次变动的效果,这个应用都会生成一个唯一的URL方便你与他人分享,你也可以在任意时刻修改你的主题。
Bootswatch——提供大量免费的Bootstrap主题。
Bootsnipp——在线前端框架交互组件制作工具,是一个供给设计师和开发者的基于BootstrapHTML/CSS/JavaScript架构的免费元素。
LayoutIt——通过界面拖放生成器简便快捷地创建基于Bootstrap的前端代码。通过拖放动作将Bootstrap风格的组件加入到你的个人设计里并且可以方便地修改他们的属性,简单便捷。
2、flex
Apache基金会发布了Flex48版本,这是Adobe将Flex捐献给Apache基金会后发布的第一个版本
需要注意的是
2014年03月10日,ApacheFlex技术社区发布了全新的ApacheFlex4120版本,该版本是ApacheFlex4110的升级版本,改进的功能包括:
◆支持最新版本的FlashPlayer
◆支持最新的AIR运行时
◆改进了内存占用和性能
◆改善了针对移动平台的组件的样式
◆支持iOS7系统
◆修复了超过80个漏洞[4]
2014年05月10日,Apache对4120版本进行优化改进,发布了Flex4121,新版本加入对全新FlashPlayer及Air运行时的支持,改进对移动媒体查询的支持,并修复20多个Bug。
3、extjs
ExtJS是一种主要用于创建前端用户界面,是一个基本与后台技术无关的前端ajax框架。
功能丰富,无人能出其右。
无论是界面之美,还是功能之强,ext的表格控件都高居榜首。
华丽的界面,灵活的功能,还有开发工具都是配套的,但有个最大的问题,用就得花钱!
4、easyui
easyui帮助你构建你的web应用更加容易。
它是一个基于jquery的插件,开发出来的一套轻量级的ui框架,非常小巧而且功能丰富。
但是她有一个最大的问题就是代码只能找到以前的开源的版本,到了12以后的版本源代码都是经过混淆的,如果遇到问题修改起来会非常麻烦!不过一个比较大的优势是开源免费,并且界面做的还说的过去!
5、MiniUI
又一个基于jquery的框架,开发的界面功能都很丰富。
jQueryMiniUI_快速开发WebUI。
它能缩短开发时间,减少代码量,使开发者更专注于业务和服务端,轻松实现界面开发,带来绝佳的用户体验。
使用MiniUI,开发者可以快速创建Ajax无刷新、B/S快速录入数据、CRUD、Master-Detail、菜单工具栏、d出面板、布局导航、数据验证、分页表格、树、树形表格等典型WEB应用系统界面。
界面做的挺不错,功能也挺丰富,但是有两个比较大的问题,一个是收费,一个是没有源码,说白了,不开源!基于这个开发如果想对功能做扩展就需要找他们的团队进行升级!
6、jQueryUI
jQueryUI是一套jQuery的页面UI插件,包含很多种常用的页面空间,例如Tabs(如本站首页右上角部分)、拉帘效果(本站首页左上角)、对话框、拖放效果、日期选择、颜色选择、数据排序、窗体大小调整等等非常多的内容。
功能非常全面,界面也挺漂亮的,可以整体使用,也可以分开使用其中的几个模块,免费开源!
7、DWZ
DWZ富客户端框架(jQueryRIAframework),是中国人自己开发的基于jQuery实现的AjaxRIA开源框架
设计目标是简单实用,快速开发,降低ajax开发成本。
欢迎大家提出建议,我们将在下一版本中进一步调整和完善功能.共同推进国内整体ajax开发水平。
毕竟是国产的,支持一下,而且源码完全公开,可以选择一下!不过性能怎么样不敢确定!
8、GWT
Google网页工具包——GWT提供了一组基于Java语言的开发包,这个开发包的设计参考JavaAWT包设计,类命名规则、接口设计、事件监听等都和AWT非常类似。熟悉JavaAWT的开发者不需要花费多大的力气就能够快速的理解GWT开发工具包,将更多地时间投入到GWT应用的开发过程中。
你不用去了解这样那样的javascript框架,通过java你就可以写出功能丰富的界面,可以做单元测试,毕竟是google的产品,严重支持一下!
9、YUI
Yahoo!UILibrary(YUI)是一个开放源代码的JavaScript函数库,为了能建立一个高互动的网页,它采用了AJAX,DHTML和DOM等程式码技术。它也包含了许多CSS资源。使用授权为BSD许可证,基本上没怎么研究过!
YUICompressor倒是挺出名的,这套UI库不知道应用的情况怎么样!
10、Sencha
Sencha是由ExtJS、jQTouch以及Raphael三个项目合并而成的一个新项目。
大公司的框架,并且是几样库的强强联合,值得推荐!
11、Dojo
在国内应用好像不是很广,不过性能上应该没问题。
Dojo是一个用javascript语言实现的开源DHTML工具包。
有多个基金会的支持,包括IBM和SUN,都是软件界的泰斗,值得信赖!
12、ZK
ZK是一套以AJAX/XUL/Java为基础的网页应用程式开发框架,用于丰富网页应用程式的使用接口。最大的好处是,在设计AJAX网络应用程式时,轻松简便的 *** 作就像设计桌面程式一样。ZK包含了一个以AJAX为基础、事件驱动(event-driven)、高互动性的引擎,同时还提供了多样丰富、可重复使用的XUL与HTML组件,以及以XML为基础的使用接口设计语言ZKUser-interfacesMarkupLanguage(ZUML)。
功能丰富,全面,文档齐全,而且升级了很多次,非常值得推荐!
13、OperaMasks-UI
OperaMasks-UI是OperaMasks团队2011下半年打造的一款轻量级前端JS组件库,旨在提供一款学习曲线低、定制性灵活、样式统一,且多浏览器支持、覆盖企业业务场景的前端JavaScriptUI组件库。目前,该团队已将这一产品以LGPL开源协议开放给社区。
文档丰富,功能齐全,而且很容易使用和开发!而且是国产的哟!
14、JavaFX
Sun公司(已于2009年被Oracle公司收购)在2008年12月05日发布了JavaFX技术的正式版,它使您能利用JavaFX编程语言开发富互联网应用程序(RIA)。JavaFXScript编程语言(以下称为JavaFX)是Sun微系统公司开发的一种declarative,staticallytyped(声明性的、静态类型)脚本语言。JavaFX技术有着良好的前景,包括可以直接调用JavaAPI的能力。因为JavaFXScript是静态类型,它同样具有结构化代码、重用性和封装性,如包、类、继承和单独编译和发布单元,这些特性使得使用Java技术创建和管理大型程序变为可能。
以上就是关于javafx窗体面板位置全部的内容,包括:javafx窗体面板位置、Java 本人初学Java遇到了一些问题,请求高手赐教!、有学习javafx的必要吗等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)