不带 AWT 的 Swing GUI 侦听器
2022-08-31 11:55:06
我是一名Java初学者,只从互联网教程中学习。我正在学习全屏 GUI 应用程序。我昨天被告知,我不应该在我的程序中使用AWT,因为它已经过时了。我已经知道轻质和重量级组件,主要问题是鼠标和键盘听众。为什么AWT已经过时了?
如何在没有AWT的情况下制作程序(将侦听器添加到等)?什么样的Swing东西可以取代AWT?JComponent
我是一名Java初学者,只从互联网教程中学习。我正在学习全屏 GUI 应用程序。我昨天被告知,我不应该在我的程序中使用AWT,因为它已经过时了。我已经知道轻质和重量级组件,主要问题是鼠标和键盘听众。为什么AWT已经过时了?
如何在没有AWT的情况下制作程序(将侦听器添加到等)?什么样的Swing东西可以取代AWT?JComponent
您误解了提供给您的信息。应避免将 Swing 组件与 AWT 组件一起使用。将 Swing 与 AWT 侦听器结构、布局管理器等一起使用是可以的,事实上,不可能不这样做。
有一些很好的答案,但我想介绍一个稍微不同的方面。Swing提供的超越AWT的东西。
Swing 支持 & 在有限的程度上使用其他一些 HTML 的样式文档。AWT 不支持任何组件中的样式文档。JEditorPane
JTextPane
JComponents
AWT没有提供像树这样的基于树的结构,没有表格结构,没有版本。JTree
JTable
JToolBar
AWT没有等价物(我可以找到或回忆起),也没有用于简单实用程序类 - 。JColorChooser
JOptionPane
如注释中所述,请参阅包中的 20 多个额外/备用侦听器。javax.swing.event
Swing 组件可以在运行时设置为特定的外观,包括本机 PLAF。
有关更多示例,请参阅嵌套布局示例上的屏幕截图。
除了大量的AWT布局外,Swing还提供:
BoxLayout
GroupLayout
OverlayLayout
ScrollPaneLayout
SpringLayout
ViewportLayout
撤消管理器
,用于在可编辑文档中进行撤消/重做。SwingWorker
for Responsive GUI。在这个简短的描述中,我可能错过了更多,但最重要的是,Swing是一个更新,更支持的GUI工具包。
Swing 既建立在 AWT 中,又在很大程度上依赖于 AWT 中的类。