Java GUI Swing模型讲解
-
21-08-2019 - |
题
我已经使用 Swing 一段时间了,但是整个模型/结构 JFrame
s, paint()
, super
, 等等在我的脑海里都是模糊的。我需要一个清晰的解释或链接来解释整个 GUI 系统是如何组织的。
解决方案
同样的情况也发生在我身上。事实上直到今天我还没有100%明白它是如何工作的。
Swing 是一个非常灵活的框架——也许太灵活了。灵活性带来了很多抽象,而抽象也带来了混乱。:)
我发现以下文章值得一读。它们帮助我更好地了解 Swing 的整体情况。
- Swing 架构概述
安装UI delegate的过程, ,就是这张图片:
他们很好地解释了模型和委托的工作原理。当我看到这些时,它总是让我发疯 JLabel
, LabelUI
, ui.update
, , ETC。
其他提示
你有没有看了的Java Swing教程(点击这里) ?它涵盖开发Swing应用程序的基础知识的一个不错的工作。
由于这个问题被打上JFrame
,我会建议为了解JFrame
s和其他顶级Swing容器是如何工作的几个环节。
我还发现,摇摆(现在仍然是)相当复杂,并考虑看看Sun提供的文档,需要每隔一段时间 - 每次我检查,我好像学到新的东西。
首先,基础知识: JFrame
一>从Java API规范类。 Java的API规范往往会提供有关的类良好的详细信息。在这种情况下,你会发现,有几个环节如的如何从Java教程框架部分。
除此之外,我还建议在看的课:使用Swing组件从Java教程的。课程提供关于如何使用在Swing提供的组件具有一些有用的例子沿指令。
有关,我已经发现令人困惑,当我开始与Swing是各种不同类型的窗格,如ContentPane
,RootPane
,GlassPane
更多的细节部分。该使用顶层容器部分提供的信息和在顶层容器的容器层次有用的图表。该如何使用根窗格部分进入了关于玻璃,分层的细节,并用大量的实例内容窗格。
我发现摇摆资源管理器是一种珍贵的工具来了解组件的层次结构(特别是在复杂的GUI)和特性看(唉,只读:我们习惯了Firebug的便利!)。它的Eclipse插件。
巨富客户端通过切特·哈泽和罗曼盖伊是关于Java UI一个伟大的书。它讲述了一些更先进的东西太多,而引进和几首章解释基本的事情做好。
如果,看完Swing指南后,你会发现你的兴趣在于更高级的主题,您也不妨看的摇摆第二版由Robinson和沃罗别夫的。
我发现,简单地在源代码浏览各地(上一个名字,如果你正在使用NetBeans按住Ctrl键点击)已经真的很有帮助。如果我看到一个方法出现在完成的对话框说我不熟悉,我就点击“转到来源”,并环顾四周,直到我舒服。