大家好哇,我是灰小猿! 今天来和大家总结一下有关在进行Java的GUI编程时常用的事件监听函数的基本作用和功能。...我们知道在Java窗体中的组件,本身是不具备任何功能的,因此我们必须要给控件添加相应的事件监听,才能在界面中触发相应的事件处理,今天就来和大家分享一下在Java中常用的几个事件监听器。...对于动作事件监听器在这里要注意的两点: 在重写的actionPerformed()函数中应该对单击的控件进行判断,判断是否是单击了该控件。...在对某一个控件进行动作事件监听的时候,一定要使用addActionListener()方法为该控件添加事件监听,否则就算对该控件写了触发事件,在没有为该控件添加监听时,单击该控件也还是没有用的。...一般情况下,为事件源做监听事件应使用匿名内部类的形式,如上例代码为按钮添加事件时采用匿名内部类的形式 焦点事件监听器 焦点事件(FocusEvent)监听器在实际使用中同动作事件监听器的使用一样广泛
,包括控件尺寸、字体、颜色、位置坐标等都是根据特定的函数来写出来的,同时Java中的控件在最开始的时候是没有函数与其绑定的,这就需要我们根据开发需求,为控件设定相应的监听函数。...,考虑到程序在开发过程中需要哪些函数、实现哪些功能、需要用到怎样的方法等。...就比如拿今天开发的这个计算器来说,我们需要有最基本的主函数,控件触发时的集中处理函数(因为我们不可能对计算器上的每一个控件设置一个处理函数,这样会增大程序的复杂度)、操作符触发时的处理函数、实现计算器界面布局的函数...控件触发时集中处理函数 首先是定义控件触发时的集中处理函数,该函数的功能上可以根据实际情况分为两部分,第一部分是在我们没有点击运算操作符前,点击数字控件所触发的事件,也就是我们在输入一个数值时要做的事情...计算器窗口界面函数 在这两个函数完成之后,就是我们计算器的界面设计函数了, 在该函数中,我们需要对计算器的整体界面进行布局设计,同时还需要对每一个控件添加监控,当我们点击相应的控件的时候,可以触发相应的事件操作
大家好,又见面了,我是你们的朋友全栈君。...标题:java课程设计(简易计算器)源代码 JAVA 源代码有解析 免费分享 先言 这是我挺久以前课程设计java写的计算器,只能实现基本的功能,我现在分享出来希望能帮助到别人。...①单击计算器上的数字按钮(0、1、2、3、4、5、6、7、8、9)可以设置参与计算的运算数。 ②单击计算器上的运算符按钮(+、—、*、/)可以选择运算符号。...③单击计算器上的函数按钮可以计算出相应的函数值。 ④单击计算器上的等号(=)按钮显示计算结果。 ⑤在一个文本框中显示当前的计算过程,在一个文本区中显示以往的计算过程。...⑥单击“保存”按钮可以将文本区中显示的全部计算过程保存到文件:单击“复制”按钮可以将文本区中选中的文本复制到剪贴板单击“清除”技钮可以清除文本区中的全部内容。 注意事项: 一.
大家好,又见面了,我是你们的朋友全栈君。...图1 2、在“商品名称”对应的JTextField中输入商品名称,单击“查询”:如果存在该商品,则显示如图2所示的窗体;若输入的名称不存在,则弹出“没找到该商品!”的对话框。...图2 3、单击“添加商品”按钮,弹出如图3所示的窗体,此时必须输入所有商品信息, 否则将弹出如图4所示的对话框;当商品信息输入完毕,单击“确定”按钮,实现商品的添加, 在弹出如图5所示的对话框后,释放窗体...JPanel中的控件时,必须设置其大小,当然JPanel对象亦然,否则很有可能不能正常显示。...this.setResizable(false);//让窗口大小不可改变 this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//用户单击窗口的关闭按钮时程序执行的操作
然后在成功登录后进入学生信息管理系统界面。在里面没有上传照片和下载图片这一选项。我在View这个程序里面首先添加了本地的图片作为图标可供下载,然后选定一个文件夹Config作为上传的路径。...从设计转化为实现,打基础这一步很困难,因为要花很长时间查资料、看书和看代码来理解程序,然后才能自己灵活进行优化。...同学之间也相互讨论帮助,都能给出自己的想法,然后交流之后会得出更好的创意,从第一个星期开始,我已经规划好要怎样做,许多同学也参考了我的规划。我一直按照计划实施并且很顺利地完成了程序设计。...如果确认删除,单击“确定”按钮,否则单击“取消”按钮。...八、课程设计总结 这次课程设计总体来说是一次非常有意义的任务,因为在这次课程设计中我学会了很多GUI编程和流类的知识,提高了编程的能力,也增加了对编程的兴趣。
大家好,又见面了,我是你们的朋友全栈君。 本实例使用随机数字生成5位抽奖号码,并显示在窗体的5个文本框中。当用户单击”开始”按钮时,将启动一个线程对象为5个文本框生成随机数字。...单击”抽奖”按钮时,线程对象停止运行,并且将准确的中奖号码显示在信息文本框中。 开发一个抽奖小工具的实例。 (1)自定义文本框组件,把5个生成随机数的文本框的公共属性抽象定义到该文本框。...startButton = new JButton(); //创建开始按钮 startButton.addActionListener(new ActionListener() { //添加事件监听器...exitButton = new JButton(); //创建退出按钮 exitButton.addActionListener(new ActionListener() { //添加事件监听器...catch (InterruptedException e1) { e1.printStackTrace(); } EventQueue.invokeLater(new Runnable() { //在事件队列中更新抽奖信息
大家好,又见面了,我是你们的朋友全栈君。 只设计了一部分 全部的太多了。会慢慢更新增加。...学生信息管理包括添加,删除,修改,查询,显示全部等 具体结构如图 在SQL Server 2005数据库上实现数据操作。...我的修改等等都是根据学号的。...我的初始密码是12345 12345 你也可以随便设置。 还有我只设置了教师登陆的界面,学生登陆的界面没有设置。...其实代码不多,我每个删除 更新 添加 查看 查找 之所以又写了一个删除 更新 添加 查找函数 因为我还会往下写的。。在后面更新 会 查找课程信息 成绩信息 什么的直接调用函数就行了。所以不要嫌多。。
大家好,又见面了,我是你们的朋友全栈君。 实现要求 1、使用Java图形界面组件设计软件,界面如图所示。 2、软件能够满足基本的“加、减、乘、除”等运算要求。...4、编辑菜单中包括“复制和粘贴”两个菜单项,为菜单项编写事件代码。...当前按下的变量 public Calculator() { this.setBounds(0, 0, 500, 500); this.setLocationRelativeTo(null);// 让窗口在屏幕中间显示...listener) { // TODO 自动生成的方法存根 JButton button = new JButton(label); button.addActionListener(listener....add(button); } // 创建内部类,作用于单击按钮执行命令的监听器 class commandAction implements ActionListener { @Override
“计算” 按钮,当然得用按钮控件来完成,但是如果只是一个平平无奇的按钮,那可就没有用了,我们需要为这个按钮添加一个计算加法的事件响应,以便我们在单击这个按钮时,计算结果会出现在方框 3 中。...7 ~ 70 行,定义了一个窗口类并在其构造函数中具体实现了控件的初始化。...8 ~ 11 行,将文本框与按钮控件作为类的成员属性,因为在程序运行时他们的状态需要保存下来,如果将其定义在某个函数中,该函数结束时,控件的生命周期也会结束,控件的状态已经其中的值无法保存,我们便无法完成后序的其他操作...32 ~ 39 行,我们将上面定义的两个面板(两个模块)放入了一个垂直盒子中(将两个模块组合)。 其中 33,34 行我设置了两个支撑体,用来控制两个模块之间的距离。...在相同包下的 Test 文件中测试一下程序。
,然后使用递归函数getFolderSize计算每个文件夹的大小,最后将结果存储到一个ArrayList中。...,点击“Calculate”就可以了,效果如下图: 再进化 在使用过程中,又有了新的问题:我看到某一个文件夹比较大,想再看看这个文件夹下的文件夹大小情况,还得手动复制粘贴文件夹路径重新计算,操作起来不是很方便...计算文件夹大小的方法是calculateFolderSize,它使用递归来遍历文件夹及其子文件夹,计算它们的大小。该方法将每个子文件夹作为一个节点添加到树中,并将文件夹大小添加到节点名称中。...我们完全可以在一次递归中完成整个计算过程。于是,我又向ChatGPT重新提问: 很遗憾,我虽然给ChatGPT扣上了卓越的帽子,但回答仍然不理想。...虽然AI在许多领域展现出了惊人的能力,但要想完全替代人类仍需克服许多难题。 在本文中,即便是在AI目前已经显示出较高的技术水平下,它仍然需要我的改进和优化来完成我所提供的任务。
许多Swing组件在其GUI中显示文本字符串。默认情况下,组件的文本以一种字体和颜色显示,并且全部显示在一行上。...示例:HtmlDemo 名为HtmlDemo的应用程序允许您通过在标签上设置文本来使用HTML格式播放。您可以在HtmlDemo.java中找到此程序的完整代码。这是HtmlDemo示例的图片。...在左侧的文本区域中编辑HTML格式,然后单击“更改标签”按钮。右边的标签显示结果。 从左侧的文本区域中删除html标签。标签的文本不再解析为HTML。...单击启动按钮,以使用Java™Web Start(下载JDK 7或更高版本)运行ButtonHtmlDemo。或者,要自己编译并运行示例,请查阅示例索引。...还请注意,当禁用按钮时,不幸的是,其HTML文本将保持黑色,而不是变为灰色。 (请参阅错误#4783068,以查看这种情况是否发生了变化。) 本节讨论了如何在普通的非文本组件中使用HTML。
方法名称 概述 getContentPane() 返回此窗体的 contentPane 对象 getDefaultCloseOperation() 返回用户在此窗体上单击“关闭”按钮时执行的操作 setContentPane...(Container contentPane) 设置 contentPane 属性 setDefaultCloseOperation(int operation) 设置用户在此窗体上单击“关闭”按钮时默认执行的操作...void setMargin(Insets m) 设置按钮边框和标签之间的空白 void setMnemonic(int nmemonic) 设置按钮的键盘快捷键,所设置的快捷键在实际操作时需要结合...btn1=new JButton("我是普通按钮"); //创建JButton对象 JButton btn2=new JButton("我是带背景颜色按钮");...JButton btn3=new JButton("我是不可用按钮"); JButton btn4=new JButton("我是底部对齐按钮"); jp.add(btn1
boolean b1 = Arrays.equals(array1, array2); 2 int index=Arrays.binarySearch(int[] a, int value): 二分搜索算法在指定的数组中搜索指定的值...6 子类不会继承父类的构造器*,而是在子类被实例化时会默认调用父类的空构造器 如果父类的构造器被 重载,那么子类中的构造器也必须初始化父类的构造器 举个例子哈 ?...方法区 逻辑上 可以认为在****堆中 ? 10 Object类 ? 11 垃圾回收 ? ? ? ? 7 ? ? ? 自动装箱? ? 自动拆箱? ?...事件监听器(Event Listener):负责监听事件源上发生的特定类型的事件,当事件到来时还必须负责处理相应的事件; ★在Swing中,对话框有几种?...★在Swing中,带有滚动条的面板的类名是__JScrollPanel____ ★组合框(JComboBox)是____文本框和列表的组合 ★Java程序可以用纯Java的___JDBC_**驱动程序
JDialog窗体的功能是从一个窗体中弹出另一个窗体,就像是在使用IE浏览器时弹出的确定对话框一样。...创建图标 在Swing中通过Icon接口来创建图标,可以在创建时给定图标的大小、颜色等特性。...注:在设置网格组的每一行和每一列对额外空间的分布方式时,建议只设置第一行的weightx属性和第一列的weighty属性,建议为各个属性按百分比取值。...jb = new JButton("我是按钮,单机我"); public SimpleEvent() { setLayout(null); setSize(300,200);...() { @Override public void actionPerformed(ActionEvent e) { jb.setText("我被单击了");
第二个界面是搜索结果界面:需要的是一个再次搜索框,用文本字段;一个再次搜索按钮,用button;一个面板JPanel,用来盛放我搜索到的结果;在界面的最底下还有三个按钮,一个文本框,分别是:上一页,下一页...在结果展示中,我只需要一个JLabel和一个文本区域和一个按钮,所以我选择JPanel。...2)第一次从net beans转到eclipse上编写时发现错误,后来经过检查发现是因为照片文件的问题,获取照片文件的相对路径为当前包,第一开始我单独放在别的包里,移到gui包后就可以正常运行了。...6.git提交记录 7.我的感想 我本身的代码基础不是很扎实,所以课设中很多部分都无法完成,只能实现Gui界面的设计与部分代码的编写。...虽然功能简单,但是我也遇到了不少的问题,比如说第一次写监听器是无法运行,原因就是我调用的类不对。还有就是跳转到网页时遇到了很多困难,研究了很久才解决。
最近找了一份教学生Java入门的‘差事’,刚刚讲了一些基础,为了引起大家学习兴趣,于是写了一个简单的点名器,awt因为很少涉及,所以找的网上的,分别写了List版本和数组版本,因为还没给学生讲解List...,只学习数组,所以单独改造了一个数组版本的,因为考虑到通用型,采用读取任意位置的txt文本,只需要按照格式一行一行的写入学生就可以实现点名了,采用的Random实现伪随机。...BorderLayout.NORTH); // 添加姓名标签在中央 p.add(name, BorderLayout.CENTER); // 添加按钮控件在南方...} // 获取随机的姓名 public String getRandomName() { int a = 0; // random类去实现随机数时,...数组版本默认读取最大100个人,如果班级学生超过100人了自行修改数组readclass方法中的的数组长度即可。 运行截图:
这是我一个晚上做出来的,因为要去做其他的项目,所以只实现了对特定数据库的xml操作,不过我觉得这是学习xml挺不错的参考代码和文档 使用说明: 要先导入xml.sql数据库,可以用navicat导入,然后运行...yes=new JButton("导入"); JButton no=new JButton("取消"); yes.addActionListener...yes=new JButton("导入"); JButton no=new JButton("取消"); yes.addActionListener...表现为在控制台输出 XMLWriter xmlWriter=new XMLWriter(format); xmlWriter.write(document); //获取当前时间...SimpleDateFormat sf = new SimpleDateFormat("yyyy年MM月dd日HH时mm分ss秒"); String time = sf.format(new
这是我一个晚上做出来的,因为要去做其他的项目,所以只实现了对特定数据库的xml操作,不过我觉得这是学习xml挺不错的参考代码和文档 使用说明: 要先导入xml.sql数据库,可以用navicat...yes=new JButton("导入"); JButton no=new JButton("取消"); yes.addActionListener...yes=new JButton("导入"); JButton no=new JButton("取消"); yes.addActionListener...表现为在控制台输出 XMLWriter xmlWriter=new XMLWriter(format); xmlWriter.write(document); //获取当前时间...SimpleDateFormat sf = new SimpleDateFormat("yyyy年MM月dd日HH时mm分ss秒"); String time = sf.format(new
大家好,又见面了,我是你们的朋友全栈君。...让窗口大小不可改变 getContentPane().setLayout(null); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//用户单击窗口的关闭按钮时程序执行的操作...button_1 = new JButton("查看旅游团信息"); button_1.addActionListener(new ActionListener() { public void...修改:点击游客将会将游客编号绑定到文本框中,可以对该游客编号对应的游客进行团号和性别修改。删除:点击要删除的信息,点击删除即可。添加:对报名信息进行添加。..."); } }); btnNewButton_Export = new JButton("将数据导出到 Excel 表中</html
在登录按钮的动作事件监听器中,首先获取用户输入的用户名与密码信息,然后调用Dao类的checkLogin()方法,如果该方法返回true,则登录成功,否则禁止用户登录,并显示提示语句。...程序重要代码如下: private JButton getLoginButton(){ if(loginButton == null){ loginButton = new JButton...(userStr); setVisible(false); // 隐藏窗体 } }) } } 4 密码文本框的回车响应 在系统登录窗体的密码文本框中添加了按键事件监听器...,它在获取到密码文本框输入的回车字符时将执行登录事件。...此过程与单击登录按钮具有相同的作用。也就是说,输完密码后,用敲回车代替单击登录按钮。
领取专属 10元无门槛券
手把手带您无忧上云