Document是用于文本的容器,用作swing文本组件的模型。 此接口的目标是从非常简单的需求(纯文本文本字段)扩展到复杂需求(例如,HTML或XML文档)。...内容 在最简单的级别,文本可以建模为线性字符序列。 为了支持国际化,Swing文本模型使用unicode字符。 文本组件中显示的字符序列通常称为组件的内容 。...以下方法与文档内容的变异有关: insertString(int, java.lang.String, javax.swing.text.AttributeSet) remove(int, int) createPosition...但是,在这种情况下,应该没有生成UndoableEditEvent因为该编辑实际上是更改的来源,而不是通过其api对Document进行的突变。 前面的文字描述了这个图形。...与属性相关的方法是: getProperty(java.lang.Object) putProperty(java.lang.Object, java.lang.Object) 有关Document
从早期的 AWT(Abstract Window Toolkit)到更先进的 Swing,Java GUI 编程逐步演进,解决了跨平台一致性、组件丰富性以及性能等问题。...缺点: 限制较多:组件功能单一,难以满足复杂 GUI 的需求。 外观不一致:不同操作系统上的显示效果可能不同。 不灵活:自定义组件的能力有限。 2....的诞生与进化 为了弥补 AWT 的不足,Java 在 JDK 1.2 中引入了 Swing。...Swing 的特点 轻量级组件:Swing 的组件不依赖于本地操作系统,而是用纯 Java 实现。...六、总结 Java Swing 的出现极大地提升了 Java GUI 编程的能力,它克服了 AWT 的局限,提供了更强大的组件库和更高的灵活性。
游戏截图 飞机项目的所有类的截图 主窗体类 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
虽然可以分别使用Applet类和Frame类来实现Swing的小应用程序和应用程序,但是,这样很可能出现事件处理问题和重新绘制问题。...例2-10用JScrollPane滚动重量组件 import javax.swing.*; import java.awt.*; import java.awt.event.*; public...图2-10示出了与图2-9相同的小应用程序,但图2-10中的小应用程序用重量AWT的ScrollPane替代了Swing的轻量JScrollPane。...例2-11列出了图2-10示的小应用程序的代码 例2-11 使用AWT的ScrollPane来滚动重量组件 import javax.swing.*; import java.awt.*; ...2.4.1 Swing单线程设计的结果 Swing单线程设计的主要结果是:大多数情况下,只能从事件派发线程中访问将要在屏幕上绘制的Swing组件。
使用getWidth()方法即可获取窗口的宽度。...示例代码: import javax.swing.JFrame; public class Main { public static void main(String[] args) {...frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); } } 执行上述代码后,控制台输出的结果将为...:窗口宽度:500,即窗口的宽度为500。
二.开发环境 开发环境:jdk 运行环境:jvm 运行平台:无限制 编辑器:eclipse 语言:java 工具:swing 数据库:mysql 三...e_buy表 (记录购买的设备信息) ? e_run表 (记录正在运行的设备信息) ? e_scrap表 (记录报废的设备信息) ? e_repair表 (记录修理的设备信息) ?...,会弹出相应对话框,记录对应状态所需要登记的信息Info (2)buy负责登记购买的设备信息 (3)running负责显示正在运行的设备信息 (4)repair负责显示正在修理的设备信息 (5)scrap...ComponentUtil 包含自定义一些常用swing组件 ConnectionUtil 数据库连接类 DatabaseXmlParser 解析db.xml,获取数据库配置信息 DateChooser...六、参考文献 《设计模式》 清华大学出版社 2011年10月第1版 刘伟 胡志刚 郭克华
一、数据库设计首先的话,基于这个FIFA球员管理系统的需求来看,只需要一个球员表baller就足够了,然后里面包含的属性应该有数据id,也就是这一条记录的id,然后就是球员的球号(bid),还有球员名字...添加菜单对应的就是Add类,然后还有修改菜单的Alter类,删除菜单对应的DelMin类,按姓名查询对应的NameQue类,和按球号查询对应的IdQue类,和模糊查询对应的LikeQue类。...这些都是需要我们去重写的.然后还有就是当添加球员的时候,需要有一个保存球员信息到数据库的方法,这里对应的就是saveTo方法。...或者更改球员信息的时候,需要有一个保存球员信息到数据库的方法,这里对应的就是updateTo方法。...完整的类图如下:这里还有最关键的一点就是说,球队名称的话,这里是写死了一个数组在这里的,teams数组代表的就是球队名称。
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
package com.swing; import java.awt.Container; import java.awt.Dimension; import java.awt.GridLayout;...* Swing中提供了多种按钮,包括提交按钮,复选框,单选按钮等 * 这些按钮都是从AbstractButton类中继承而来的 * * 2:Swing中的提交按钮组件(JButton)由JButton...package com.swing; import java.awt.BorderLayout; import java.awt.Container; import java.awt.event.ActionEvent...package com.swing; import java.awt.Container; import javax.swing.ButtonGroup; import javax.swing.JButton...此简例只是简单的描写了如何实现单选按钮,并没有产生反应,仅是案例演示 package com.swing; import java.awt.Color; import java.awt.Container
最近一个实习生问我,swing好难啊,就是jtable的增删查改都做不出来了,我也好久没有做了,各种文档,各种查找,各种百度终于是完成了一个小的项目,也就是所说的增删除查改。不废话了,上代码。...用户表数据访问的实现 : package dao.impl; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList...的实现 主窗口: package ui; import java.awt.BorderLayout; public class MainFrame extends JFrame implements...new JTextField(); txtName.setBounds(150, 65, 146, 18); add(txtName); txtName.setColumns(10...JTextField(); txtBirth.setBounds(150, 160, 146, 23); add(txtBirth); txtBirth.setColumns(10
3、一个关于Java += 操作符的问题 (2223赞) 直到今天我认为这个例子: i += j; 只是一个简写的: i = i + j; 但如果这样做: int i = 5; long j = 8;...这意味着i += j; 实际上是i = (type of i) (i + j)的简写么? 解决方案 总有人问这类问题,JLS里有答案。参见 §15.26.2复合赋值运算符。...因为同步对你来说不是个问题,我推荐使用HashMap。如果同步成为问题,你可能还要看看ConcurrentHashMap。...(1574个赞) 在Swing中,密码字段有一个getPassword()(返回 char数组)方法而不是通常的getText()(返回String)方法。...10、使用Java在一个区间内产生随机整数数 (1422个赞) 我试着使用Java生成一个随机整数,但是随机被指定在一个范围里。例如,整数范围是5~10,就是说5是最小的随机值,10是最大的。
前言 本文总结了有关Java异常的十大常见问题。 目录 1、检查型异常(checked) vs....5、Java中经常使用的运行时异常 6、我们可以在同一个catch子句中捕获多个异常吗? 7、在 Java 中构造方法能抛出异常吗?...10、为何有些开发人员对异常置之不理? ? 检查型异常(checked) vs....例如,IOException就是常见的检查型异常,而 RuntimeException(运行时异常)就是非检查型异常。在阅读剩余部分之前你或许可以研读这份 Java异常的层次结构图[1]。 ? ?...它俩抛出的异常确实不同,但这是JDK的问题,当时开发这两个接口的开发人员不是同一波,所以我们没必要去纠结这个问题。
用数组的话,就可以很明确的修改它任何位置的字符元素。这样的话,如密码等安全敏感的信息就不会出现在系统的任何地方。 3. 字符串对象能否用在switch表达式中?...在JDK6中,这个方法只会在标识现有字符串的字符数组上 给一个窗口来表示结果字符串,但是不会创建一个新的字符串对象。如果需要创建个新字符串对象,可以这样在结果后面+一个空的字符串: ?...这么写的话就会创建一个新的字符数组来表示结果字符串。同时,这么写也有一定的几率让你的代码跑的更快,因为垃圾回收器会吧没有在使用的大字符串回收而留下子字符串。...在Python编程中,只需要用字符串去乘以一个数字就可以 搞定了,那在Java编程中,我们可以使用来自Apache Commons Lang包中的StringUtils类的repeat()方法。 ?...如何将时间格式的字符串转换成date对象? ? 10. 如何计数一个字符在某个字符串中出现的次数? 使用Apache Commons Lang包中的 StringUtils类就可以完成这个工作。 ?
今天想跟大家聊聊自己体会,所以今天的文章我们不聊技术,来说点大实话,入行5年整理了10个问题,分享给大家,这些问题是很多刚入行或者工作几年的程序员都会遇到的问题,我仅从我的个人工作经验和认知角度谈一下观点...这个问题是很多Java学习群里经常讨论的问题,也是很多毕业生习惯问老师的问题。其实这个问题该问自己?如果自己学历不好,那就是能力更重要!如果客观回答这个问题,我认为学历和能力同等重要。...当然这并不是绝对的,文章里我的结论都是在普通人的基础上总结的,因为百分之90的人都是普通人,那种很聪明很牛逼的人还是占很小一部分的。...我的老家在每年的污染城市排行榜中都是前10名以内。 就这点和北京真的没有差别。你可能会说你将来孩子上学,照顾父母等早晚也要回去的,的确,考虑到这点的确回老家可能还是逃避不了的问题。...而这些是我在老家基本无法实现的目标,从这点上,留在北京比回老家的益处更多,所以对于我个人,未来几年我还是会选择留在北京,如果将来能在北京做出一番事业那就更好。
String对象是不可变的,这就意味着直到java垃圾回收器回收之前它们都不会发生变化的。用数组的话,就可以很明确的修改它任何位置的字符元素。...int n = Integer.parseInt("10"); 如何用空格去分隔字符串? 使用正则表达式来进行分隔。...在JDK6中,这个方法只会在标识现有字符串的字符数组上 给一个窗口来表示结果字符串,但是不会创建一个新的字符串对象。...同时,这么写也有一定的几率让你的代码跑的更快,因为垃圾回收器会吧没有在使用的大字符串回收而留下子字符串。 JDK7中的substring()方法会创建一个新的字符数组,而不用之前存在的。...("MMMM d, yy", Locale.ENGLISH).parse(str); System.out.println(date); //Tue Sep 17 00:00:00 EDT 2013 10
package com.swing; import java.awt.Container; import java.awt.GridLayout; import javax.swing.JButton...,设置1行3列的网格布局 JPanel p1=new JPanel(new GridLayout(1,3,10,10)); JPanel p2=new JPanel(new...package com.swing; import java.awt.Container; import javax.swing.JFrame; import javax.swing.JScrollPane...; import javax.swing.JTextArea; import javax.swing.WindowConstants; /** * 1:设置界面时,可能会遇到在一个较小的容器窗体中显示一个较大部分的内容的情况...* * 3:如果需要在JScrollPane面板中放置多个组件,需要将多个组件放置在JPanel面板上, * 然后将JPanel作为一个整体组件添加到JScrollPane组件上。
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{...String label, ActionListener listener) { JButton button = new JButton(label);//实例化每个按钮,并把字符串添加到按钮上
大家好,又见面了,我是你们的朋友全栈君。 本项目为Java swing项目,在工作环境中基本使用不到,但是很多学校把这个当做编程入门的项目来做,故分享出本项目供初学者参考。...; import java.sql.Connection; import java.sql.SQLException; import javax.swing.GroupLayout; import javax.swing.GroupLayout.Alignment...; import java.awt.Color; import java.awt.EventQueue; import java.awt.Font; import javax.swing.ImageIcon...java.sql.Connection; import java.sql.SQLException; import javax.swing.GroupLayout; import javax.swing.GroupLayout.Alignment...; import javax.swing.JLabel; import javax.swing.UIManager; import javax.swing.ImageIcon; import java.awt.Font
关于java文档,可自行下载: java文档 二.Swing常用组件 组件名称 定义 JButton 代表Swing按钮,按钮可以带一些图片或文字 JCheckBox 代表Swing中的复选框组件...Swing中的文本区域 JOptionPane 代表Swing中的一些对话框 每个组件都有很多种用法,建议查看java文档。...也可以使用图片作为图标来使用: import java.awt.*; import javax.swing.*; import java.net.URL; public class myicon extends...import java.awt.*; import java.util.Vector; import javax.swing.*; public class zujian extends JFrame{...奋斗的心态会调用尽你前半生所有的智慧、资源、技巧和情商去面对问题,还会把你以前积累上的不足,以最直接的方式暴露在你前面。让你知道自己有多强,也让你知道自己有多弱。