如果我在java中编写应用程序,如果在Mac OS X上运行,它是否使用本机小部件?或者它是否使用java运行时提供的“相似”小部件?
感谢。
答案 0 :(得分:5)
您可以使用在OS X上使用本机OS X控件的SWT,但也保持多平台(前提是该平台具有为其编译的SWT库)。但是,它不像直接访问UI组件本身那样灵活或看起来不错(必须进行抽象)。
您还可以查看MacWidgets,它试图像本机OS X小部件一样但不是,但是跨平台工作。
alt text http://exploding-pixels.com/google_code/graphics/MailSourceListWithControlBar-selection.png
答案 1 :(得分:2)
是。 Apple提供了jvm版本,它使用本机小部件。
developer.apple.com/business/macmarket/tekadence.html
Apple的Java的好处 实施包括访问Aqua 用户界面元素“免费” 通过Swing,原生先发制人 多任务处理,多处理支持 (无需额外编码), 并将JAR文件视为共享 库。最后的进步有所改善 执行的速度和减少 应用程序的RAM占用空间 依赖于相同的档案,例如 套房内的应用程序 此外,Mac OS X插入Java 窗口工具包直接进入 Mac的原生窗口工具包,给予 Java应用程序和applet 图形性能的好处 Quartz,三个强大的图形之一 Mac OS X上的技术。
答案 2 :(得分:0)
所有Java Swing组件are look-alike, not native widgets。
Swing的可配置性是选择不使用本机主机OS的GUI控件来显示自身的结果。 Swing通过使用Java 2D API以编程方式“绘制”其控件,而不是调用本机用户界面工具包。
Apple JVM提供了一种OSX外观,但它实际上并不是本机控件。另一种方法是SWT,但老实说,除了Eclipse之外我还没有看过很多应用程序,我从来没有真正发现它们看起来非常好。