首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Java-GUI 编程之 JList、JComboBox实现列表

简单列表使用JList或JComboBox实现简单列表步骤: 创建JList或JComboBox对象 JList(final E[] listData):创建JList对象,把listData数组中每项内容转换成一个列表项展示...java.util.Vector; public class ListTest { JFrame mainWin = new JFrame("列表框测试"); String[] books...在使用JList和JComboBox时,除了可以使用jdk提供Model实现类,程序员自己也可以根据需求,自己定义Model实现类,实现对应方法使用。...如果需要创建一个可以增加、删除列表 JList 对象,则应该在创建 JLi st 时显式使用 DefaultListModel作为构造参数 。...如果希望列表项是更复杂 组件,例如,希望像 QQ 程序那样每个列表项既有图标,此时需要使用ListCellRenderer接口实现类对象,自定义每个条目组件渲染过程: public interface

3.4K11
您找到你想要的搜索结果了吗?
是的
没有找到

java学习之路:32.史上最全Swing常用组件

一.前言 首先应该明白,用java创建一个窗体程序包括下面几步: 1.实例化JFrame对象,也就是创建一个窗体。 2.获取一个容器。 3.创建组件。 4.向容器添加组件。...应该有这样概念,Swing组件窗体通常与组件和容器相关,所以在JFrame对象创建完成后,需要调用方法将窗体转换为容器,然后在容器中添加组件或设置布局管理器,通常,这个容器用来包含和显示组件。...//实例化JFrame对象,就是创建一个窗体 JFrame jf =new JFrame("花狗");//设置窗体标题 //获取容器 Container c =jf.getContentPane...可以看到创建按钮涉及整个窗体,这是为什么呢,窗体默认使用边界布局器,创建组件会覆盖整个窗体,我们只需要取消边界布局,改用绝对布局: jf.setLayout(null); //告诉窗体取消边界布局...JList jr =new JList(); ? 和下拉列表框一样空白,没有什么实际价值。 2.构造一个JList,用于显示指定向量中元素。

6.4K32

Java进阶08 GUI

早期Mac GUI GUI需要操作系统和硬件支持。因此,GUI编程往往要处理移植性问题JavaGUI编程有相对比较好可移植性。...此外,整个图像外有一个方框,用来表明可绘图范围,所有上面提到元素都依附于该方框。 另一方面,上述对象有许多重复使用图形元素(component)。比如把手是一个圆,房子和门由直线构成。...相同图形元素可以归为一类(class)。我们可以重复使用直线类来生成(不同性质)直线,并组合到不同对象中。 这是用面向对象方式来理解一个图形。对象是描述图形自然方式。...匿名类是Java一种嵌套类,它是在使用new创建对象时,使用一个{}来直接包含类定义。在匿名类定义中,我们不需要说明类名。...图形树 在程序中,我们首先创建了JFrame对象JFrame是top-level container,也就是图形树根。JFrame默认包含有Content Pane。

1.7K70

java swing一篇轻松学习(高考后可以自学)

setDefaultLookAndFeelDecorated (boolean defaultLookAndFeelDecorated) 设置 JFrame 窗口使用 Windows 外观(如边框、...main(String[] args) { new Action8(); } } 下拉JComboBox: 方法名称 说明 void addItem(Object anObject) 将指定对象作为选项添加到下拉列表框中...void insertItemAt(Object anObject,int index) 在下拉列表框中指定索引处插入项 void removeltem(0bject anObject) 在下拉列表框中删除指定对象项...void removeItemAt(int anlndex) 在下拉列表框中删除指定位置对象项 void removeAllItems() 从下拉列表框中删除所有项 int getItemCount...JList package com.item.swings; import java.awt.BorderLayout; import java.awt.Color; import java.awt.Dimension

9.3K10

Java-GUI 编程之 Swing

Swing概述  实际使用 Java 开发图形界面程序时 ,很少使用 AWT 组件,绝大部分时候都是用 Swing 组件开发 。...当模型发生改变时,它会通知所有依赖它视图,视图会根据模型数据来更新自己。Swing使用UI代理来包装视图和控制器, 还有一个模型对象来维护该组件状态。...例如,按钮JButton有一个维护其状态信息模型ButtonModel对象 。 Swing组件模型是自动设置,因此一般都使用JButton,而无须关心ButtonModel对象。...2.更新JFrame风格时,调用了 SwingUtilities.updateComponentTreeUI(f.getContentPane());这是因为如果直接更新 JFrame 本身 ,将会导致...JFrame 也被更新JFrame 是一个特殊容器 , JFrame 依然部分依赖于本地平台图形组件 。

2.2K10

Java---设计模式app小软件汇总应用

这个小软件只是为了更好说明和了解设计模块而做Java 程序设计–包结构 Java程序设计系统体系结构很大一部分都体现在包结构上 大家看看我这个小软件分层: ?...3、模块内部技术实现一般由:表现层、逻辑层、数据层等构成。 对于许多类都要使用公共模块或公共类,可以再独立建立一个包,取名common或base,把这些公共类都放在其中。...设计与实现常用方式、DAO基本功能 ★ 设计时候:从大到小 先把一个大问题分解成一系列问题。...下面的为那个小软件实现这些设计模式简单汇总: (含分层思想,值对象,工厂方法,Dao组件,面向接口编程) main方法类: UserClient : package cn.hncu.app;...import java.io.ObjectInputStream; import java.io.ObjectOutputStream; import java.util.ArrayList; import

50020

1小时学会通过Java Swing Design设计java图形化

环境与工具: 系统环境:win10 开发工具:Eclipse IDE for Java Developers - 2020-09 数据库:MySQL5.6 学习目标: 一般大一结束时候需要做一个类似一下内容...---- 1、项目创建 使用eclipse直接创建一个java空项目即可,唯一要注意就是创建【java时候不是点击【class】而是创建【JFrame】,通过【JFrame】才能使用设计工具【Design...2、绝对位置布局Absolute layout 使用这个方式方便拖拽,很方便: 3、工具栏简述: 4、常用控件简述 1、顶层容器:JFrame(窗体),JDialog(对话窗) 2...JList 列表 JTable 表格 画有些乱,但是基本上一眼就能看出来是啥:  表格JTable: JPanel设置上下布局,JScrollPane设置,这样才能显示table标题列 添加一些测试数据...; import java.awt.EventQueue; import java.util.ArrayList; import java.util.Vector; import javax.swing.JFrame

85510

BIO~~

Java 常用 api 使用。 ​ … 功能清单简单说明: 1.客户端登陆功能 可以启动客户端进行登录,客户端登陆只需要输入用户名和服务端ip地址即可。 2.在线人数实时更新。...,然后提取当前在线全部用户名称和当前登陆用户名称发送给全部在线用户更新自己在线人数列表。...服务端接收群聊消息 目标 在上节实现了接收客户端登陆消息,然后提取当前在线全部用户名称和当前登陆用户名称发送给全部在线用户更新自己在线人数列表。...因为客户端可能随时会接收到服务端那边转发过来各种即时消息信息。 客户端登陆完成,服务端收到登陆用户名后,会立即发来最新用户列表给客户端更新。...,会响应一个在线列表用户回来给客户端更新在线人数!

85820

JavaSwing 图形界面GUI王者级开发(大纲)

文本框) JavaSwing_2.7: JPasswordField(密码框) JavaSwing_2.8: JTextArea(文本区域) JavaSwing_2.9: JComboBox(下拉列表框...) JavaSwing_2.10: JList列表框) JavaSwing_2.11: JProgressBar(进度条) JavaSwing_2.12: JSlider(滑块) 3 面板 JavaSwing...JSplitPane(分隔面板) JavaSwing_3.4: JTabbedPane(选项卡面板) JavaSwing_3.5: JLayeredPane(层级面板) 4 其他组件 JavaSwing_4.1: JFrame...绘图: 使用Graphics类绘制线段、矩形、椭圆/圆弧/扇形、图片、文本 Java图片操作 — 图片读取、绘制、缩放、裁剪、保存 Java代码截屏:使用 Java 代码截取电脑屏幕并保存 Java...模拟鼠标键盘输入事件 — Robot 类 Java操作桌面应用 — Desktop 类 Java操作系统剪贴板(Clipboard)实现复制和粘贴 7 更多操作 如何在Swing组件中使用HTML

1.3K10

JavaSwing_8.1:焦点事件及其监听器 - FocusEvent、FocusListener

该事件被传递给每一个FocusListener或FocusAdapter注册,以接收使用组件此类事件对象addFocusListener方法。...对处理焦点事件感兴趣类 要么实现此接口(以及它包含所有方法) 要么扩展抽象FocusAdapter类(仅覆盖感兴趣方法) 然后,使用组件addFocusListener方法向组件注册从该类创建侦听器对象...使用扩展类创建一个侦听器对象,然后使用组件 addFocusListener 方法向组件注册该监听器。...java.awt.event.*; import javax.swing.*; public class FocusEventDemo extends JFrame implements...该演示可以使用setFocusable(false)从焦点循环中真正删除该文本区域,但这将产生不幸后果,使使用辅助技术的人员无法使用该组件。 再次按Tab键。焦点从列表移回到文本字段。

4.6K10

java swing图形化界面_javagui界面设计

教程总目录: Java Swing 图形界面开发(目录) 1. Swing简介 Swing 是 Java 为图形界面应用开发提供一组工具包,是 Java 基础类一部分。...Swing 包含了构建图形界面(GUI)各种组件,如: 窗口、标签、按钮、文本框等。 Swing 提供了许多比 AWT 更好屏幕显示元素,使用Java 实现,能够更好兼容跨平台运行。...2.1 顶层容器 顶层容器属于窗口类组件,可以独立显示,一个图形界面至少需要一个窗口,例如: # 组件 描述 1 JFrame 一个普通窗口(绝大多数 Swing 图形界面程序使用 JFrame 作为顶层容器...6 JTextField 文本框 7 JPasswordField 密码框 8 JTextArea 文本区域 9 JComboBox 下拉列表框 10 JList 列表 11 JProgressBar...创建中间容器(面板容器) JPanel panel = new JPanel(); // 创建面板容器,使用默认布局管理器 // 3.

1.5K50

常用设计模式——复合模式

视图通常直接从模型中取得它需要显示状态和数据。视图使用组合模式实现用户界面,用户界面通常组合了嵌套组件,像面板、框架和按钮。 控制器:取得用户输入,并解读其对模型意思。...控制器是视图策略,视图可以使用不同控制器(不同策略),得到不同行为。 模型:模型持有所有数据、状态和程序逻辑。使用了观察者模式,以便观察者更新,同时保持两者之间解耦。...流程 : 用户在视图上面进行操作,然后控制器取得用户输入,并解读其对模型意思。 控制器调用模型,模型负责处理具体逻辑。然后通知视图更新使用模式 观察者模式 ? 策略模式 ? 组合模式 ?...(观察敲击) ArrayList beatObservers = new ArrayList(); // 观察者列表(观察BPM) ArrayList...这给Java EE开发带来一系列问题 如 代码耦合性强,系统控制流程复杂,难以维护等,为了解决这些问题,原Sun公司制定了Model1模式作为Java EE程序员开发考性规范.

1.4K20

Java常用事件监听器与实例分析

在swing事件模型中由三个分离对象完成对事件处理,分别为事件源、事件和监听程序,由事件源触发一个事件,它由一个或多个监听器进行监听,并且由监听器触发事件并执行相应事件。...然而对于事件监听器,其实就是一个“实现特定监听器接口”类对象,事件几乎都以对象来表示,它是某种事件类对象,事件源(控件,如按钮)会在用户做出相应动作(如点击按钮)时产生事件对象, 在这里需要注意是...动作时间监听器 动作事件(ActionEvent)监听器是swing中比较常用一种监听器,在Java窗体中很多事件都需要使用它来进行监听,如我们常见按钮点击事件等,以下是动作事件监听器接口和常见事件源...: 事件名称 事件源 监听接口 添加或删除相应类型监听器方法 ActionEvent JButton、JList、JTextField ActionListener addActionListener...一般情况下,为事件源做监听事件应使用匿名内部类形式,如上例代码为按钮添加事件时采用匿名内部类形式 焦点事件监听器 焦点事件(FocusEvent)监听器在实际使用中同动作事件监听器使用一样广泛

2.5K10

java课程设计-多人聊天工具(socket+多线程)

,实现可视化,通过socket实现服务端与客户端连接,服务端每接收一个连接,把传进来用户名和对应socket连接封装成一个User对象,把User对象存进一个ArrayList用户列表并把User...对象通过取用户名方法取得用户名存进一个ArrayList用户名列表,添加一个JPanel组件,将ArrayList内容通过循环显示JPanel中并布局在窗体右边,在每当有人上线或者下线,刷新JPanel...用于绑定强制用户下线事件监听,事件监听中将获取JTextField内容与用户名列表进行逐一匹配,匹配上则创建JSON格式键值对对象,通过用户列表循环广播告知其他用户,并在用户列表和用户名列表中分别删除该用户信息...6.使用JSONObject对象封装数据 在数据传输中运用了键值对形式进行传输,客户端传输给服务端数据包中,通过判断private键值来确认是否私发,通过username键告知服务端客户端用户名...,用于存放连接上用户信息 ArrayList user_list = new ArrayList(); //用户名列表,用于显示已连接上用户 ArrayList

2.1K30
领券