Java Swing 提供了丰富的组件库,其中JTable、JTree和JTextArea用于展示数据和用户输入。本文将深入浅出地介绍这些组件,常见问题,易错点以及如何避免,同时提供代码示例。 1....JTable JTable用于展示二维数据,如表格形式的数据。它可以从数组、列表或模型中获取数据。...JTree JTree用于展示层次结构的数据,如文件系统或组织结构。...避免方法:在创建JTextArea时设置初始文本。 结语 JTable、JTree和JTextArea是Swing中展示和处理数据的重要组件。...理解它们的用法,注意常见的设计模式和错误,可以帮助你创建出功能丰富的用户界面。在实践中,结合不同的布局管理器和组件,你可以构建出各种复杂的界面。
m) 设置工具条与工具按钮的边距 setOrientation( int o ) 设置工具条的方向 setRollover(boolean rollover) 设置此工具条的rollover状态 add...: 创建一个适用于该容器的组件(例如,在工具栏中创建一个工具按钮); 从 Action 对象中获得对应的属性来设置该组件(例如,通过 name 来设置文本,通过 lcon 来设置图标) ; 把Action...AWT中的 FileDialog 基本相似,也是用于生成"打开文件"、"保存文件 "对话框。...showOpenDialog(Component parent):打开文件加载对话框,并指定父组件 showSaveDialog(Component parent):打开文件保存对话框,并指定父组件 获取用户选择的结果...、QUESTION_MESSAGE、PLAIN_MESSAGE icon:当前对话框左上角的图标 options:自定义下拉列表的选项 initialValue:自定义选项中的默认选中项 当用户与对话框交互结束后
我们知道在Java窗体中的组件,本身是不具备任何功能的,因此我们必须要给控件添加相应的事件监听,才能在界面中触发相应的事件处理,今天就来和大家分享一下在Java中常用的几个事件监听器。...然而对于事件监听器,其实就是一个“实现特定监听器接口”类对象,事件几乎都以对象来表示,它是某种事件类的对象,事件源(控件,如按钮)会在用户做出相应的动作(如点击按钮)时产生事件对象, 在这里需要注意的是...一般情况下,为事件源做监听事件应使用匿名内部类的形式,如上例代码为按钮添加事件时采用匿名内部类的形式 焦点事件监听器 焦点事件(FocusEvent)监听器在实际使用中同动作事件监听器的使用一样广泛...,如使用焦点事件监听器可以用于:当光标离开某一个事件源时触发某个事件的响应,或将焦点返回给该事件源。...()、removeFocusListener() 下面以一个实例来说明该事件监听器的应该,在当第一个文本框失去焦点时,触发事件进行弹窗提示,代码如下: package focusEvent; import
添加到的组件 int getIconTextGap() 返回此标签中显示的文本和图标之间的间隔量 int getHorizontalTextPosition() 返回 JLabel 的文本相对其图像的水平位置...void insertItemAt(Object anObject,int index) 在下拉列表框中的指定索引处插入项 void removeltem(0bject anObject) 在下拉列表框中删除指定的对象项...void removeItemAt(int anlndex) 在下拉列表框中删除指定位置的对象项 void removeAllItems() 从下拉列表框中删除所有项 int getItemCount...() 返回下拉列表框中的项数 Object getItemAt(int index) 获取指定索引的列表项,索引从 0 开始 int getSelectedIndex() 获取当前选择的索引 Object...;i++) { listData[i]="这是列表框的第"+(i+1)+"个元素~"; //为数组中各个元素赋值 } list.setListData
jta2=new JTextArea(); jta2.setLineWrap(true); jta2.setToolTipText("显示查询结果"); jspane2=new JScrollPane...3.下半部分框显示查询结果 WAR查询逻辑: public class PatchFilesGet { private String warPath; JTextArea jta2; //结果输出 public...= null){ jta2.setText(jta2.getText() + "\n" +res);; } } } 总结: 编写过程中遇到两个问题:1.WAR包中解压出来的jar文件删除失败问题,关闭所有文件读取流...此代码因个人使用,并不是很完善,还有很多功能可以增加完善。比如添加查询文件过滤,文件查询结果统计返回失败、成功数,补丁对比等功能。 版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。...如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
JToggleButton(开关按钮) JavaSwing_2.6: JTextField(文本框) JavaSwing_2.7: JPasswordField(密码框) JavaSwing_2.8: JTextArea...(文本区域) JavaSwing_2.9: JComboBox(下拉列表框) JavaSwing_2.10: JList(列表框) JavaSwing_2.11: JProgressBar(进度条...: JTable(表格) JavaSwing_4.9: JTree(树) JavaSwing_4.10: JInternalFrame(内部窗口) 5 相关特性 JavaSwing_5.1: 组件的位置和尺寸...、绘制、缩放、裁剪、保存 Java代码截屏:使用 Java 代码截取电脑屏幕并保存 Java模拟鼠标键盘输入事件 — Robot 类 Java操作桌面应用 — Desktop 类 Java操作系统剪贴板...(Clipboard)实现复制和粘贴 7 更多操作 如何在Swing组件中使用HTML 8 事件及其监听器 焦点事件及其监听器 - FocusEvent,FocusListener
JDialog窗体的功能是从一个窗体中弹出另一个窗体,就像是在使用IE浏览器时弹出的确定对话框一样。...: 12.7 列表组件 12.7.1 下拉列表框组件 Swing中的下拉列表框使用JComboBox类对象表示,它是javax.swing.JComponent类的子类,常用的构造方法有: public...(ComboBoxModel dataModel) public JComboBox(Object[] arrayData) public JComboBox(Vector vector) 一般将下拉列表框中的项目封装为...: public void setSelectedItem(Object item) public Object getSelectedItem() setSelectedItem()方法用于设置下拉列表框中的选中项...,getSelectedItem()方法用于返回下拉列表框中的选中项。
下面主要用到了java中的swing进行界面设计,当然java的GUI不如C#的设计的好看,不过原理还是要会的。 1. ..., java.awt中的Component抽象类是javaGUI中所有类的父类。...基本组件:在其控件中不能容纳其他组件,如按钮,文本框等 ii. 容器:可以在其上面添加其他组件,如窗口,对话框等; 2. ...按钮组件:JButton---普通按钮 JCheckBox---复选框 JRadioButton—单选框 JComboBox –下拉列表框 c) JTextField中常用方法 ...把同组的按钮添加在bg中 iii.
服务器端 因为运行的过程中随时会有客户端连上服务器,所以服务器端需要一个线程来等待客户端的链接。...客户端 客户端需要实现的主要功能是群发消息和私发消息,并且通过收到的消息格式判断服务器发送过来的消息,再进行响应的代码。...四、运行结果 客户端/服务器端界面: 私聊界面: 五、源代码 server.java: package chat; import javax.swing.*; import javax.swing.event.ListSelectionEvent...单独的模型 ListModel 维护列表的内容。...,为了防止后面登陆的用户无法更新有前面用户的好友列表 ListModel model = userList.getModel();//获取Jlist的数据内容
4.单客户端和服务器通信的简单例子: 服务器端代码: package com.lou.socket; import java.io.BufferedReader; import java.io.IOException...Socket socket = server.accept(); // 在没有客户端对其进行相应前,下面的代码不会执行,将一直阻塞 //服务器端的输出流和输入流获取 BufferedReader...; public class ServerGUI extends JFrame { public final Socket socket; //交互对话框中接收数据显示区 final JTextArea...JTextArea(70, 70); final JTextArea inputArea = new JTextArea(70, 70); final JScrollPane outputScroll...输入流监听和发送数据的监听线程SocketInfoUpdater.java (这个类其实和服务器端上的基本上一样,之所以把它贴出来是考虑到在后续的开发设计中,Server 端和Client端的机制有所不同
标题:java课程设计(简易计算器)源代码 JAVA 源代码有解析 免费分享 先言 这是我挺久以前课程设计java写的计算器,只能实现基本的功能,我现在分享出来希望能帮助到别人。...写得其实挺一般的,见谅见谅。有课程设计任务的学弟学妹也是写计算器的可以看看参考参考。源代码里我写有挺多解析的,能帮助理解。...③单击计算器上的函数按钮可以计算出相应的函数值。 ④单击计算器上的等号(=)按钮显示计算结果。 ⑤在一个文本框中显示当前的计算过程,在一个文本区中显示以往的计算过程。...⑥单击“保存”按钮可以将文本区中显示的全部计算过程保存到文件:单击“复制”按钮可以将文本区中选中的文本复制到剪贴板单击“清除”技钮可以清除文本区中的全部内容。 注意事项: 一....Linked List类的基本用法。 直接先看效果: 全部源文件都是放在 keshe这个包里面,直接用的话建这个包再复制源文件代码进去就行或者自己重新写 package代码用自己建的包名。
的用户名列表,添加一个JPanel组件,将ArrayList中的内容通过循环显示JPanel中并布局在窗体的右边,在每当有人上线或者下线,刷新JPanel组件。...用于绑定强制用户下线的事件监听,事件监听中将获取的JTextField的内容与用户名列表进行逐一匹配,匹配上则创建JSON格式的键值对对象,通过用户列表循环广播告知其他用户,并在用户列表和用户名列表中分别删除该用户信息...3.客户端能够看到所有在线用户 客户端继承了JFrame,实现可视化,添加了一个布局在窗口右边的JPanel,把从服务端接收到的用户名列表中的信息放进去。...6.使用JSONObject对象封装数据 在数据的传输中运用了键值对的形式进行传输,客户端传输给服务端的数据包中,通过判断private键的值来确认是否私发,通过username键告知服务端客户端的用户名...//用户名显示区域 JTextArea show_user = new JTextArea(10, 10); //socket的数据输出流 DataOutputStream
,所有下面只列出组件创建的代码。...JComboBox 代表Swing下拉列表框,可以在下拉显示区域显示多个选项 JFrame 代表Swing的框架类 JDialog 代表Swing版本的对话框 JLabel 代表Swing中的标签组件...可以看到创建了一个空白的下拉列表框,显然在日常应用中是没有用的,下面来添加选项: 2.创建一个JComboBox,它从现有的ComboBoxModel中获取项目。...和下拉列表框一样空白,没有什么实际价值。 2.构造一个JList,用于显示指定向量中的元素。...12.JTextArea | 代表Swing中的文本区域 JTextArea类有有6种构造方法: 构造方法 解释 JTextArea() 构造一个新的文本区域。
每个此类侦听器对象获取此FocusEvent当事件发生时。 有两个焦点事件级别:持久性和暂时性的。...当暂时丢失焦点的组件的另一个操作,比如释放Window或拖动滚动条的间接结果一时焦点变化的事件发生。...要获取许多组件的焦点状态,请考虑在KeyboardFocusManager类上实现PropertyChangeListener实例,如如何使用焦点子系统中的将焦点更改跟踪到多个组件中所述。...注册在每个组件上的焦点侦听器报告每个焦点获得和焦点丢失的事件。对于每个事件,将报告焦点更改中涉及的其他组件,即相反的组件。...单击FocusEventDemo窗口的顶部。该按钮触发了聚焦事件。 按键盘上的Tab。焦点移至列表。 再次按Tab键。焦点移到文本区域。
,该类方法需要的参数类型是 * Dimension类对象,这样看上去此图片就如同按钮一样摆放在窗体中, * 同时也可以使用setEnabled()方法设置按钮是否可用...以下2行代码需要额外注意 URL url=JButtonTest.class.getResource("imageButtoo.jpg"); Icon icon=...并且一定要指定编译器的大小 private JTextArea jt=new JTextArea(20,50);//创建文本域组件 private JCheckBox jc1=new JCheckBox...* AbstractButton类中的方法。...此简例只是简单的描写了如何实现单选按钮,并没有产生反应,仅是案例演示 package com.swing; import java.awt.Color; import java.awt.Container
= Integer.parseInt(minuteField.getText( ).trim( )); 但是当用户在文本域中输入了非整数字符串,如“two”或者文本域中为空时,这段代码就会产生错误。...在这种情况下,可以捕获parseInt方法抛出的NumberFormatException异常,如果文本域中的内容不是数字,就不更新时钟了。在下一节中,将会看到如何在第一时间阻止用户的无效输入。...当点击按钮时,可以用getValue方法读取用户输入的数值。这个方法将返回一个Object结果,需要将它强制类型转换为相应的类型。...下面是过滤器的一段insertString方法代码,它将分析要插入的字符串,并且只将数字或者“-”符号插入到文档中。(这段代码的处理可参见第3章解释的辅助Unicode字符。...提示:在Swing中,为组件增加滚动条的通用机制是将组件放置在滚动窗格中。 例9-4给出了文本区演示的完整代码。这个程序只能在文本区中修改文本。点击“Insert”将句子插入文本末尾。
1.编写PC端工程代码: 这是一个Java工程,分为客户端和服务器端。两者的关系如图; ? 工程目录: ?...Server.java(这里面有java swing生成界面的代码,和Android-layout有点像) package com.example.pcchat.server; import java.awt.BorderLayout...= null) { // 将客户端发来的数据存在serverThread的messages数组中 serverThread.messages.add...(message); // 在服务器端的文本框中显示新消息 Server.jTextArea.append...inputType="textMultiLine" android:singleLine="false" /> 测试结果
许多Swing组件在其GUI中显示文本字符串。默认情况下,组件的文本以一种字体和颜色显示,并且全部显示在一行上。...这是在按钮的文本中使用HTML的示例: button = new JButton("Two lines"); 这是结果按钮。 ?...在左侧的文本区域中编辑HTML格式,然后单击“更改标签”按钮。右边的标签显示结果。 从左侧的文本区域中删除html标签。标签的文本不再解析为HTML。...您可以在ButtonHtmlDemo.java中找到此程序的完整代码。这是ButtonHtmlDemo示例的图片。...还请注意,当禁用按钮时,不幸的是,其HTML文本将保持黑色,而不是变为灰色。 (请参阅错误#4783068,以查看这种情况是否发生了变化。) 本节讨论了如何在普通的非文本组件中使用HTML。
例如: await page.fill('input[name="username"]', 'testuser') 此代码会在名为“username”的输入框中输入“testuser”文本。...选择下拉列表中的选项 可以使用selectOption()方法从下拉列表中选择选项。...例如: await page.selectOption('select[name="country"]', 'USA') 此代码将从名称为“country”的下拉列表中选择“USA”选项。...例如: await page.keyboard.type('hello') 此代码将在当前焦点元素中输入“hello”文本。 模拟鼠标操作 可以使用mouse对象模拟鼠标操作。...例如: await page.mouse.click(100, 100) 此代码将在屏幕上x坐标为100,y坐标为100的位置单击鼠标。
3.java读取txt文件,简化代码。 三、项目实施 使用eclipse软件开发,先上效果图,如下图所示。可以看到在界面上有可以改变字号、字体、字形、颜色、设置选项的菜单栏,页面切换的功能。 ?...public class StoryBook extends JFrame { //成员变量 private static JTextArea text01 = new JTextArea("");...以上将字号、字体、字形、颜色、设置添加到JMenuBar菜单栏中,字体里面的菜单项如黑体、宋体添加到菜单中。其他字号、字形、颜色、设置添加组件也一样!...四、总结 本文主要介绍了JPanel、JButton、JLabel、JTextArea、JMenu、JMenuItem等组件的基本使用,以及相应的事件处理。...这些代码比较简单,也是一个简单的小案例,希望对你的学习有所帮助。下篇文章,我们进行具体的实现,敬请期待! ? 欢迎大家点赞,留言,转发,转载,感谢大家的相伴与支持
领取专属 10元无门槛券
手把手带您无忧上云