2.1 小应用程序与应用程序 使用Swing组件的小应用程序和应用程序应该分别扩展Swing的JApplet(java.applet.Applet的一个扩展)和JFrame(java.awt.Frame...因此,这种小应用程序不能使用,例如,用Applet.getImage方法来获取一幅图像。实际应用中,也没有那么多限制,因为应用程序除借用小应用程序的内容窗格外不需要使用小应用程序。...最后添加到容顺中的组件的层序最低,即它在同一个容器中的所有其他组件的下面显示。 如果容器是异类的(即它既有轻量组件又有重量组件),则事情要稍微复杂些。...从第1.2节“轻量组件与重量组件的比较”中,我们知道,轻量组件不是显示在它们自己的窗口中,而是显示在它们的重量容器的窗口中。所以,轻量组件的层序与重量容器的层序相同。...技术上说,在Swing组件的对等组件创建之前(指可在屏幕上绘制之前)(注:对等组件是用addNotify方法创建的),它们可以从多个线程中访问。
另外,本章还介绍如何使用最简单的GUI组件元素,如按钮,以及如何处理由这些组件产生的基本事件。在下一章中,将阐述如何将Swing提供的多个组件组织在一起,并全面地讲述这些组件产生的事件。...程序员对相关的特定事件编写代码,并将这些代码放置在过程中,通常人们将它们称为事件过程(event procedure)。...javax.swing.ImageIcon 1.2 • ImageIcon(String filename) 构造一个图标,它的图像存储在一个文件中。通过媒体跟踪器自动地加载这个图像(参阅第7章)。...在前面列举的例子中,三个按钮共享同一个监听器类。当然,每个按钮分别使用不同的监听器对象。但是,这些对象并不大,它们只包含一个颜色值和一个面板的引用。...出于简化的目的,每个含有多个方法的AWT监听器接口都配有一个适配器(adapter)类,这个类实现了接口中的所有方法,但每个方法没有做任何事情。
根据浏览器中选择的节点,属性和参考窗口(右上窗和右下窗)显示所选节点的属性及其在服务器地址空间网格网络中的引用。 OPC UA 数据视图 默认情况下,此插件显示在 Ua 专家的中心窗格中。...单击事件时,下窗格组将根据您在配置中勾选的选定事件字段向您显示此特定事件的所有详细信息。 OPC UA 历史趋势视图 使用菜单栏中的"添加文档"按钮添加"历史视图文档"。...OPC UA 性能视图 使用菜单栏中的"添加文档"按钮添加"性能视图文档"。性能插件将显示在中心窗格中,由三个主要组组成,即配置、使用节点列表和在图形视图中显示测量结果。...您可以(多)选择地址空间浏览器中的节点,并将它们拖放到节点的中心列表中。所有节点必须来自同一个 UA 服务器,并且应具有相同的数据类型,以便更轻松地解释结果。...结果将显示在较低的图形窗格中。累积图形显示不同 UA 服务之间的比较(比较计算的平均值)。此外,还分别显示每个 UA 服务测量,以验证测量的恒定性和可信性。
接下来,我们创建了四个按钮,并使用 frame.add() 方法将它们添加到窗口中。最后,我们将窗口设置为可见。运行程序后,你将看到四个按钮按照 FlowLayout 的规则依次排列在窗口中。...如果没有指定添加到哪个区域中,则默认添加到中间区域中; 如果向同一个区域中添加多个组件时 , 后放入的组件会覆盖先放入的组件; 构造方法 构造方法 方法功能 BorderLayout() 使用默认的水平间距...每个按钮分别位于面板的不同位置(北、南、西、东和中心)。最后,将面板添加到主窗口中并显示窗口。...Swing 以下是一个使用GridBagLayout布局的Swing示例: import java.awt.GridBagConstraints; import java.awt.GridBagLayout...下面是一个使用Swing的CardLayout实现的简单示例: import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent
Java Swing介绍 1.Swing是一个为java世纪的GUI工具包 2.Swing是JAVA基础类的一部分 3.Swing包括了图形用户界面(GUI)器件如:文本框,按钮,分隔窗格和表 4个器件...4.Swing提供许多比AWT更好的屏幕显示元素,用纯java写成。...AWT是JFC的一部分,支持可更换的面板和主题(各种操作系统默认的特有主题),然而并不是真的使用原生平台提供的设备,而是仅仅在表面上模仿它们。...JPanel java图形用户界面(GUI)工具包swing中的面板容器类,包含在javax.swing包中,可以进行嵌套,功能是对窗体中具有相同逻辑功能的组件进行组合,是一种轻量级容器,可以加入到JFrame...JLabel JLabel对象可以显示文本、图像或同时显示二者。可以通过设置垂直和水平对齐方式,指定标签显示区中标签内容在何处对齐。默认情况下,标签在显示区内垂直居中对齐。
javax.swing.SwingConstants; import javax.swing.WindowConstants; /** * 1:在Swing中显示文本或提示信息的方法是使用标签,它支持文本字符串和图标...* 重点是标签含有文本字符串和图标 * * 2:标签可以显示一行只读文本,一个图像或带图像的文本,它并不能产生任何类型的事件 * 只是简单的显示文本和图片,但是可以使用标签的特性指定标签上文本的对齐方式...; /** * 1:Swing中的图标除了可以绘制以外,还可以使用某个特定的图片创建。...* Swing利用javax.swing.ImageIcon类根据现有的图片创建图标 * ImageIcon类实现了Icon接口,同时Java支持多种图片格式 * * 2:ImageIcon类有多个构造方法...imageButton.jpg图片放在和此类同一个文件夹下面 Icon icon=new ImageIcon(url);//实例化Icon对象 jl.setIcon
Byobu的主要功能包括多个控制台窗口,每个窗口中的拆分窗格,显示主机状态的通知和状态标记,以及跨多个连接的持久会话。...您可以分别使用F3和向左和向右滚动窗口F4。您还可以提供这些窗口名称,以便更轻松地组织和查找它们。...如果要对它们重新排序,请分别使用CTRL+SHIFT+F3/F4左移或右移列表。 此时,syslog中应该有一些日志条目。...接下来,让我们通过学习如何使用窗格来扩展此示例。 第7步 - 使用窗格 Byobu提供了将窗口分成多个窗格的功能,包括水平和垂直分割。这些允许您在同一窗口中进行多任务,而不是跨多个窗口。...ALT+F11 永久地将窗格拆分为自己的新窗口。 在步骤7的示例中,使用拆分而不是窗口可以很容易地使用syslog尾部,编辑器窗口和新命令提示符,这些都在同一个窗口中打开。
(JButton) Swing 的 JButton 类对 AWT 的Button 类进行功能扩展,创建的按钮不仅可以显示文本标签,而且可以显示图标 JButton构造方法 JButton类的构造方法有多个...如果要将多个单选按钮组合成具有互斥关系的单选按钮组,则需要调用 ButtonGroup 对象的成员方法 add(), 添加这些单选按钮对象到同一个 ButtonGroup 对象中。...它们都被添加到一个JPanel中,并且通过ButtonGroup对象进行分组,以确保只能选择一个选项。当选择一个选项时,会显示相应的信息在JLabel中。...JList常用成员方法 JList类是Java Swing库中的一个成员,用于显示一列数据,并允许用户从中选择一个或多个项目。...当点击添加按钮时,会弹出一个对话框,要求用户输入新项目的名称,并将其添加到列表中。当点击删除按钮时,会删除选定的项目。整个界面使用JPanel来组织,并且使用了JFrame作为窗口容器。
有关如何使用此功能的更多详细信息,请参见如何使用根窗格。 一个小程序可以扩展java.applet.Applet类,当它不使用 Swing 的 GUI 组件时。...在MyApplet的init方法中,实例化MyTopJPanel并将其设置为 applet 的内容窗格。 以下部分通过使用动态树演示 applet 更详细地探讨这些步骤。...页面上的所有 Java applets 以及浏览器本身共享同一状态行。 永远不要将关键信息放在状态行中。如果许多用户可能需要该信息,请在 applet 区域内显示该信息。...例如,一个加载多个图像文件的 applet 可能会显示当前正在加载的图像文件的名称。 Applets 使用showStatus方法显示状态行,该方法从Applet类继承到JApplet类。..."*windowName*" – 在名为 windowName 的窗口中显示文档。如有必要,将创建此窗口。 "_self" – 在包含小程序的窗口和框架中显示文档。
解决这一问题的常见答案是终端复用:即将虚拟终端叠放在一起,然后在它们之间移动的能力。通过终端复用器,你保持了集中控制,但是当你进行多任务时,你能够进行终端切换。...更好的是,你能够在终端中拆分屏幕,使得在同一时间显示多个屏幕窗口。 选择合适的复用器 一些终端提供类似的功能,有标签式界面和分割式视图,但也有细微的差别。首先,这些终端的功能依赖于图形化的桌面环境。...其次,许多图形化的终端功能需要鼠标交互或使用不方便的键盘快捷键。终端复用器的功能在文本控制台上和在图形桌面上一样好用,而且键位绑定是针对常见的终端序列设计的,很方便。...这将把一个窗口置于另一个窗口之上,就像窗格一样。然而,在你告诉它要显示什么之前,分割的空间是没有用途的。因此,在创建一个分割窗后,你可以用 Ctrl+A ,然后用 Tab 移动到分割窗中。...一旦进入,使用 Ctrl+A 然后 n 浏览所有可用的窗口,直到你想显示的内容出现在分割窗格中。
而本章介绍的Java图形用户界面技术是基于Java SE 的 Swing,事实上它们在实际应用中使用不多,因此本章的内容只做了解。...Applet Applet称为Java小应用程序,Applet基础是AWT,但它主要嵌入到HTML代码中,由浏览器加载和运行,由于存在安全隐患和运行速度慢等问题,已经很少使用了。...Swing类层次结构 容器和组件构成了Swing的主要内容,下面分别介绍一下Swing中容器和组件类层次结构。...事件类型和事件监听器接口 使用适配器 事件监听器都是接口,在Java中接口中定义的抽象方法必须全部是实现,哪怕你对某些方法并不关心。为此 Java 还提供了一些与监听器相配套的适配器。...在界面中安排一个标签显示单词,另有“上一个”、“下一个”两个按钮实现单词的前后翻动。
在这里,我们使用一个名为dist的目标目录 结果有jre了,如图: JDK安装包介绍 bin:该路径下存放了JDK的各种工具命令。javac和java就放在这个目录。...java.awt.dnd Drag 和 Drop 是一种直接操作动作,在许多图形用户界面系统中都会遇到它,它提供了一种机制,能够在两个与 GUI 中显示元素逻辑相关的实体之间传输信息。...java.awt.im.spi 提供启用可以与 Java 运行时环境一起使用的输入方法开发的接口。 java.awt.image 提供创建和修改图像的各种类。...javax.swing.plaf 提供一个接口和许多抽象类,Swing 用它们来提供自己的可插入外观功能。 javax.swing.plaf.basic 提供了根据基本外观构建的用户界面对象。...javax.swing.plaf.multi 提供了组合两个或多个外观的用户界面对象。
我们将使用Java编程语言和Swing图形界面库,从零开始构建一个简单但功能强大的计算器应用程序。...编译结果将显示在消息对话框中,显示编译成功或编译失败的消息。 可以运行编译后的代码,调用系统命令行执行java Main命令,并获取代码运行的输出结果。 运行结果将显示在消息对话框中。...具体解释:具体来说,code.split("\n", -1) 使用换行符 (\n) 将字符串 code 拆分成多个行,并返回一个包含拆分后的子字符串的数组。...在Swing事件调度线程中创建并显示代码编辑器。...* 在主方法中,使用SwingUtilities.invokeLater() 方法调度创建和显示代码编辑器的任务, * 确保在正确的线程上进行Swing组件的创建和更新操作。
特征: l 可以把组件放在这五个位置的任意一个,如果未指定位置,则缺省的位置是CENTER。 l 南、北位置控件各占据一行,控件宽度将自动布满整行。...若东、西、南、北位置中无论哪个位置没有控件,则中间位置控件将自动占据没有控件的位置。 l 它是窗口、框架的内容窗格和对话框等的缺省布局。 1、 常见的构建函数和方法 ?...实例: import javax.swing.*; import java.awt.*; public class BorderLayoutDemo1 extends JFrame {..., Font.PLAIN, 14)); this.getContentPane().add("North", new JButton("North")); //将按钮添加到窗口中...import javax.swing.*; import java.awt.*; public class BorderLayoutDemo2 extends JFrame { JPanel
每个servlet表示一个应用程序逻辑的组件(component),而且如果是高吞吐量的网站,多个client会一次请求同一个servlet的service。...当一个servlet访问被多个servlets或多个request共享的对象时,那么它就必须要适当的协同的访问这些对象,因为多个request也许是分别来自不同线程,不同的线程的request同时访问这些对象...当你使用RMI调用一个远程方法,方法的参数会被打包到一个byte stream中,然后通过网络被运送到远程到JVM中,然后再把包拆开,把参数拿出来传给远程的方法。...会不会出现同一个远程对象的同一个远程方法同时被多个RMI线程调用呢?...如果一个应用程序想要在事件线程外面来操作GUI,那么它就必须把操控GUI的代码放在事件线程中来运行。
= new JTabbedPane(); //实例化选项卡窗格 tabbedPane.add("录入成绩",new addPanel().panel); //向选项卡窗格中添加”录入成绩“窗格...().panel3); //向选项卡窗格中添加”排序成绩“窗格 tabbedPane.add("修改成绩",new modifyPanel().panel4); //向选项卡窗格中添加”修改成绩...JFrame("XXX学校学生成绩管理系统"); //实例化窗口 init(); //调用init方法 frame.add(tabbedPane,BorderLayout.NORTH); //向窗口中添加选项卡窗格...import java.sql.SQLException; import java.util.LinkedList; import javax.swing.JButton; import javax.swing.JPanel...面板中添加p3面板并放在panel5的南面。
您现在可以轻松地在 Markdown 文件中插入表格。使用编辑器选项卡变得更容易。只需单击选项卡窗格右上角的三个点即可访问所有选项卡操作。...我们已经可以使用选项卡拆分“运行”工具窗口。这允许您同时运行多个配置并查看所有结果。在搜索操作时,IntelliJ IDEA 中的Search Everywhere使用机器学习对结果进行排名。...在 Java 中引入局部变量的设置不再出现在弹出窗口中,用于隐藏您正在编写的代码。...在 IntelliJ IDEA 中测试流应用程序时,您不再需要等待流结束,因为 HTTP 客户端将即时显示输出。HTTP 客户端可以检测响应中的图像并在响应控制台中显示它们的预览。...IntelliJ IDEA 可以检测您的 OpenAPI 规范何时位于多个文件中并通过 $ref 链接,并为它们提供补全。
如果需要将用户的输入分割为多个单独的行,可以使用StringTokenizer类(参见第12章)。图9-14显示了一个工作的文本区。 在JTextArea组件构造器中,可以指定文本区的行数和列数。...在Swing中,文本区没有滚动条。如果需要滚动条,可以把文本区中插入一个滚动窗格(scroll pane)中。...如果文本超出了文本区可以显示的范围,滚动条就会自动出现,并且在删除部分文本后,当文本能够显示在文本区范围内时,滚动条会再次消失。滚动是由滚动窗格内部处理的,编写程序时无需处理滚动事件。...提示:在Swing中,为组件增加滚动条的通用机制是将组件放置在滚动窗格中。 例9-4给出了文本区演示的完整代码。这个程序只能在文本区中修改文本。点击“Insert”将句子插入文本末尾。...参数:c 跳格的列数 javax.swing.JScrollPane 1.2 • JScrollPane(Component c) 创建一个显示指定组件内容的滚动窗格。
1、swing窗口和面板容器 窗口:(JFrame) 这里是类继承【JFrame】,然后完成基本设置,一定要显示true,不然看不见。...(String[] args) { new Action(); } } 面板:(JPanel) 是一种中间层容器,它能容纳组件并将组件组合在一起,但它本身必须添加到其他容器中使用。...void setIconTextGap(int iconTextGap) 如果 JLabel 同时显示图标和文本,则此属性定义它们之间的间隔 void setHorizontalTextPosition...int getText() 返回 JLabel 所显示的文本字符串 Component getLabelFor() 获得将 JLabel 添加到的组件 int getIconTextGap() 返回此标签中显示的文本和图标之间的间隔量...列位置处的列名称 getRowCount() 返回 JTable 中可以显示的行数(给定无限空间) getRowSorter() 返回负责排序的对象 getSelectedColumn() 返回第一个选定列的索引
领取专属 10元无门槛券
手把手带您无忧上云