微调按钮加画布画几个圆,再实现监听。。。...package cn.hncu.threadDemo.thread2; import java.awt.Canvas; import java.awt.Color; import java.awt.Graphics...; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.FocusEvent...; import java.awt.event.FocusListener; import javax.swing.JFrame; import javax.swing.JLabel; import...javax.swing.JPanel; import javax.swing.JSpinner; import javax.swing.Timer; import javax.swing.event.ChangeEvent
我们知道在Java窗体中的组件,本身是不具备任何功能的,因此我们必须要给控件添加相应的事件监听,才能在界面中触发相应的事件处理,今天就来和大家分享一下在Java中常用的几个事件监听器。...然而对于事件监听器,其实就是一个“实现特定监听器接口”类对象,事件几乎都以对象来表示,它是某种事件类的对象,事件源(控件,如按钮)会在用户做出相应的动作(如点击按钮)时产生事件对象, 在这里需要注意的是...动作时间监听器 动作事件(ActionEvent)监听器是swing中比较常用的一种监听器,在Java窗体中很多事件都需要使用它来进行监听,如我们常见的按钮点击事件等,以下是动作事件监听器的接口和常见的事件源...java.awt.Container; import java.awt.Font; import java.awt.event.FocusListener; import javax.swing.JButton...在使用焦点事件监听器时,需要注意以下几点: 使用该监听器需要实现FocusListener接口 该接口中重写的focusLost()方法是在组件失去焦点时调用的。
import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.util.Vector; public class...main2 { String str1 = "0"; // 运算数1 初值一定为0 为了程序的安全 String str2 = "0"; // 运算数2 String signal.../ 结果 // 状态开关 int k1 = 1;// 开关1 用于选择输入方向 将要写入str2或 str2 int k2 = 1;// 开关2 符号键 次数 k2>1说明进行的是...2+3-9+8 这样的多符号运算 int k3 = 1;// 开关3 str1 是否可以被清0 ==1时可以 !...main(String[] args) { // 界面风格,可以去除 try { UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel
Main.java class Main { public static void main(String[] args) { new FrameTest()...; } } FrameTest.java package com.company; import javax.swing.*; import java.awt.*; class...frame.setBounds(600, 200, 300, 220);//设置窗体位置&大小 c.setLayout(new BorderLayout());//设置视图的布局...设置窗体可见 } public void init(){ // 标题——上方 JPanel titlePanel =new JPanel();//创建一个放置标题的面板
最近一个实习生问我,swing好难啊,就是jtable的增删查改都做不出来了,我也好久没有做了,各种文档,各种查找,各种百度终于是完成了一个小的项目,也就是所说的增删除查改。不废话了,上代码。...public interface IDeptDao { /** * 查找全部部门 * @return */ List queryAll(); } 4)数据访问接口的实现...用户表数据访问的实现 : package dao.impl; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList...e.printStackTrace(); }finally{ util.closeAll(); } return _list; } } 部门表数据访问的实现...的实现 主窗口: package ui; import java.awt.BorderLayout; public class MainFrame extends JFrame implements
( FocusAdapter对象实现FocusListener接口。)每个此类侦听器对象获取此FocusEvent当事件发生时。 有两个焦点事件级别:持久性和暂时性的。...对处理焦点事件感兴趣的类 要么实现此接口(以及它包含的所有方法) 要么扩展抽象FocusAdapter类(仅覆盖感兴趣的方法) 然后,使用组件的addFocusListener方法向组件注册从该类创建的侦听器对象...(如果你实现 FocusListener 接口,则必须定义该接口中的所有方法。此抽象类将所有这些方法都定义为 null,所以你只需针对所关心的事件重写方法即可)。...java.awt.event.*; import javax.swing.*; public class FocusEventDemo extends JFrame implements...* Use an appropriate Look and Feel */ try { //UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel
Main.java package myCalculator; import javax.swing.JFrame; public class Main { public static void...package myCalculator; import javax.swing.JFrame; public class MyFrame extends JFrame{ public MyFrame...() { add(new MyPanel()); pack(); } } MyPanel.java package myCalculator; import...java.awt.*; import java.awt.event.*; import javax.swing.*; public class MyPanel extends JPanel{...//面板2-中部 ActionListener command = new CommandAction();//command监听器 //CommandAction是实现接口
Document是用于文本的容器,用作swing文本组件的模型。 此接口的目标是从非常简单的需求(纯文本文本字段)扩展到复杂需求(例如,HTML或XML文档)。...相反,文本通常具有与其相关联的某种结构。 建模的结构取决于特定的Document实现。 它可能就像没有结构(即简单的文本字段)一样简单,或者它可能类似于下图。 ?...插入或移除对文档结构的影响完全取决于文档的实现。...以下方法与文档内容的变异有关: insertString(int, java.lang.String, javax.swing.text.AttributeSet) remove(int, int) createPosition...与属性相关的方法是: getProperty(java.lang.Object) putProperty(java.lang.Object, java.lang.Object) 有关Document
; import java.awt.event.FocusEvent; import java.awt.event.FocusListener; import...import java.io.FileReader; import java.io.IOException; import javax.swing.ImageIcon...; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel...; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JPasswordField...private class addUserFocusListener implements FocusListener { // 当用户名区获取焦点 则将给出的提示取消
import java.awt.GridLayout; import java.util.regex.Matcher; import java.util.regex.Pattern; import java.util.regex.PatternSyntaxException...; import javax.swing.*; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener...; import javax.swing.event.DocumentEvent; import javax.swing.event.DocumentListener; /** Standalone...Swing GUI application for demonstrating REs.
游戏截图 飞机项目的所有类的截图 主窗体类 package com.tarena.shout; import java.awt.Graphics; import java.awt.Image; import...java.awt.image.BufferedImage; import java.util.Random; import javax.imageio.ImageIO; import javax.swing.JFrame...; import javax.swing.JPanel; import com.tarena.shout.ShootGame.KeyMonitor; import com.tarena.shout.ShootGame.PaintTread...; import java.util.Timer; import java.util.TimerTask; import java.util.Arrays; import java.awt.event.KeyAdapter...public void outOfBoundsAction(){ int index=0;//不越界的敌人的数组系的下标 FlyingObject[] flyinglives=new FlyingObject
虽然Swing是AWT的扩展,但是两者的基本概念还是有许多不同之处。首先,Swing小应用程序和应用程序的实现方式与AWT小应用程序和应用程序的实现方式有所不同。...因此,应当总是使用JApplet和JFrame来实现Swing的小应用程序和应用程序。 ...2.1.2 JApplet类 Swing的JApplet类扩展java.applet.Applet并实现Accessibility接口和RootPaneContainer接口。...毕竟,Java语言本身就内置了多线程特性,因此,就会有人主张应当以线程安全的模式实现Swing。 ...然而,正是因为Java内置了对多线程的支持,但这并不意味着在Java中实现安全的多线程小应用程序或应用程序是一件简单的事情,更不用提工具包了。
0 JavaSwing 简介 Java Swing 图形界面开发简介 1 布局管理器 JavaSwing_1.1: FlowLayout(流式布局) JavaSwing_1.2: GridLayout...: JTable(表格) JavaSwing_4.9: JTree(树) JavaSwing_4.10: JInternalFrame(内部窗口) 5 相关特性 JavaSwing_5.1: 组件的位置和尺寸...绘图: 使用Graphics类绘制线段、矩形、椭圆/圆弧/扇形、图片、文本 Java图片操作 — 图片的读取、绘制、缩放、裁剪、保存 Java代码截屏:使用 Java 代码截取电脑屏幕并保存 Java...模拟鼠标键盘输入事件 — Robot 类 Java操作桌面应用 — Desktop 类 Java操作系统剪贴板(Clipboard)实现复制和粘贴 7 更多操作 如何在Swing组件中使用HTML...8 事件及其监听器 焦点事件及其监听器 - FocusEvent,FocusListener
; import java.awt.event.FocusEvent; import java.awt.event.FocusListener; import java.io.BufferedReader...import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JFrame;...import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JPanel;...import javax.swing.JPasswordField; import javax.swing.JTextField; import javax.swing.SwingConstants...private class addUserFocusListener implements FocusListener { // 当用户名区获取焦点 则将给出的提示取消 public
二.开发环境 开发环境:jdk 运行环境:jvm 运行平台:无限制 编辑器:eclipse 语言:java 工具:swing 数据库:mysql 三...e_buy表 (记录购买的设备信息) ? e_run表 (记录正在运行的设备信息) ? e_scrap表 (记录报废的设备信息) ? e_repair表 (记录修理的设备信息) ?...,会弹出相应对话框,记录对应状态所需要登记的信息Info (2)buy负责登记购买的设备信息 (3)running负责显示正在运行的设备信息 (4)repair负责显示正在修理的设备信息 (5)scrap...负责显示已报废的设备信息 选项卡中的equipment和buy界面由ManageFrame负责创建,对应方法为createEquipmentPanel()和createBuyPanel(),通过返回自定义的...ComponentUtil 包含自定义一些常用swing组件 ConnectionUtil 数据库连接类 DatabaseXmlParser 解析db.xml,获取数据库配置信息 DateChooser
一、源码 import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.text.DecimalFormat...; import java.util.function.ToDoubleBiFunction; public class MyCalculator { private JFrame frame...除了我们的按钮之外,还有我们的输出显示窗口resultText,输出的结果我们都用resultNum来记录,之后在放到我们的输出窗口上。 其他的都写成注解了。...3.添加按钮事件监听机制 当我们点击计算机上的按钮的时候,计算器要给出反馈,这时就需要我们添加一个事件监听机制了。注释写好了,当我们点击不同的按钮的时候要处理不同的功能。...倘若点了退格键那我们就把面板上的文字域删掉一个符号。比如我们输入的是111,点了退格之后就是11,当然你会想这只是文字域的变化,那我们保存的要计算的值为什么不变?
一、数据库设计首先的话,基于这个FIFA球员管理系统的需求来看,只需要一个球员表baller就足够了,然后里面包含的属性应该有数据id,也就是这一条记录的id,然后就是球员的球号(bid),还有球员名字...添加菜单对应的就是Add类,然后还有修改菜单的Alter类,删除菜单对应的DelMin类,按姓名查询对应的NameQue类,和按球号查询对应的IdQue类,和模糊查询对应的LikeQue类。...这些都是需要我们去重写的.然后还有就是当添加球员的时候,需要有一个保存球员信息到数据库的方法,这里对应的就是saveTo方法。...完整的类图如下:这里还有最关键的一点就是说,球队名称的话,这里是写死了一个数组在这里的,teams数组代表的就是球队名称。...要想实现该功能的话,主要在于拼接sql字符串和判断球员输入来进行一个拼接字符串查询。
package com.swing; import java.awt.Color; import java.awt.Container; import java.awt.event.WindowAdapter...; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.SwingConstants; import javax.swing.WindowConstants...; /** *1:Swing组件通常被称作"轻量级的组件"; * *2:窗体作为Swing应用程序中组件的承载体,处于非常重要的位置,Swing中常用的窗体包括 *JFrame,JDialog... * *3:JFrame窗体是一个容器,它是Swing程序中各个组件的载体,可以将JFrame看作是承载这些 *Swing组件的容器 * *4:读者大致应该有这样一个概念 *Swing组件的窗体通常和组件的容器相关...,实例化JLabel对象,然后将标签实例添加到容器中,然后可以设置容器的布局, package com.swing; import java.awt.Color; import java.awt.Container
Java Swing实现类似QQ的停靠在桌面边缘时自动隐藏 import java.awt.Point; import java.awt.Rectangle; import java.awt.event.ActionEvent...; import java.awt.event.ActionListener; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent...; import java.awt.event.MouseMotionAdapter; import javax.swing.JFrame; import javax.swing.Timer; public...(isPtInRect(rect, point))) { // 当窗体的上边框与屏幕的顶端的距离小于5时 , // 并且鼠标不再窗体上将窗体隐藏到屏幕的顶端...(isPtInRect(rect, point))) { // 当窗体的上边框与屏幕的顶端的距离小于5时 , // 并且鼠标不再窗体上将窗体隐藏到屏幕的顶端
而在swing中,与界面交互的各种操作,比如插入,删除等被称之为Edit,实际上就是Command。 1 undo包 ?...MVC架构中,JList是一个View类,操作内部数据的能力来自于它的数据模型类ListModel 推荐阅读:Java中的JList和DefaultListModel的亲密关系 ListEdit抽象类...redo方法在ListEdit中已经实现 一个需要注意的问题是,在实现执行逻辑时要保留现场数据,以供Undo时恢复现场。...package com.javaedge; import javax.swing.DefaultListModel; import javax.swing.undo.CannotUndoException...SampleFrame.java 示例的启动类 SamplePanel.java 产品列表界面类 ListEdit.java 列表操作抽象类 AddEdit.java 添加操作类 DeleteEdit.java
领取专属 10元无门槛券
手把手带您无忧上云