java桌面程序中使用联动菜单遇到与解决的问题

最近在做一个小小的系统,想实现联动菜单,故尝试了几种方法。

1、想通过一个线程来监控下拉菜单的变化,从而控制从菜单。

遇到的问题:

①:开始,我是用一个外部线程类,不过我要通过外部线程类来改变主窗口的下拉菜单,

②:所以,就需要一个传递一个类参数才能引用,

③:我在主窗口中调用线程类。

④:由于我需要把从数据中得来的数据在线程类中使用,所以就需要在线程类中使用数据库连接

当然不是在run方法中使用,而是在最开始定义数据时就初始化赋值好。

⑤:我以为,在最开始使用数据库连接,就连一次,应该没事。

⑥:接着,运行时报错,应该是数据库连接太多,溢出吧。

⑦:就debug,发现一道主线程的ir = new ItemRun();这里就报错,也就是,初始化对象是就有问题,也就是其构造时就有问题。

⑧:想了好久,应该想通了:当主线程调用线程类,而线程类中又有主线程,继而在线程类中再调用主线程

构造方法(我的线程类初始化在主线程构造方法中),这样就会产生无限的循环,一层掉一层,有点像递归。

2、利用事件来监控

①:所以多线程不能用了,突然想到了事件监控

②:通过监控JComboBox,从而得到它被选择的item,来改变从菜单的items值。

③:最终成功了。

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-08-06 20:08:25

java桌面程序中使用联动菜单遇到与解决的问题的相关文章

在Java Web程序中使用监听器可以通过以下两种方法

之前学习了很多涉及servlet的内容,本小结我们说一下监听器,说起监听器,编过桌面程序和手机App的都不陌生,常见的套路都是拖一个控件,然后给它绑定一个监听器,即可以对该对象的事件进行监听以便发生响应,从本质上来说这些都是观察者模式的具体实现,在web程序中的监听器也不例外.在Java Web程序中使用监听器可以通过以下两种方法:通过注解@WebListener来标识一个自定义的监听器:[java] view plain copy@WebListener public class Custom

转 : 终于搞清楚了为什么Java桌面程序总是感觉慢的原因

转自: http://my.oschina.net/u/2306127/blog/370495 终于搞清楚了为什么Java桌面程序总是感觉慢的原因!    按照道理服务器和浏览器都在用脚本和虚拟机,那些不慢,而Java的桌面程序总是感觉响应迟钝呢?主要有两个原因,一是服务器和浏览器都是异步的,提交到渲染出来这中间有足够的时间去处理,而且网络IO要远远慢于本地CPU调用:二是浏览器的界面其实不是JavaScript渲染(很多人可能都会以为HTML是JS绘制的),而是浏览器在操作系统层原生支持的,甚

在.net桌面程序中自定义鼠标光标

有的时候,一个自定义的鼠标光标能给你的程序增色不少.本文这里介绍一下如何在.net桌面程序中自定义鼠标光标.由于.net的桌面程序分为WinForm和WPF两种,这里分别介绍一下. WinForm程序 对于WinForm程序,可以通过修改Control.Cursor属性来实现光标的修改,如果我们有光标文件的话,可以直接通过如下代码实现自定义光标: this.Cursor = new Cursor("myCursor.cur"); 但这种方式不是本文介绍的重点,本文主要介绍如何自己绘制光

Java应用程序中System.out.println输出中文乱码

Java应用程序中System.out.println输出中文乱码 2013-12-10 21:27:08cnblogs.com-bluepoint2009-点击数:3631 其实,解决办法比较简单,即:编译时指定编码为UTF-8,如: 1 javac -encoding utf-8 HelloJava.java 这样,再运行时就不会出现乱码. 一.中文问题的来源 计算机最初的操作系统支持的编码是单字节的字符编码,于是,在计算机中一切处理程序最初都是以单字节编码的英文为准进行处理.随着计算机的发

Java应用程序中的声音播放

声音可以创造意境,触发遐想,当与虚拟图像相结合时,更加可以让整个世界充满幻觉,声音是多媒体技术的基础. 播放声音是Java对多媒体的支持一个重要部分,它支持的声音文件类型主要有: AU - (扩展名为AU或SND)适用于短的声音文件. WAV - (扩展名为WAV)由 Microsoft和 IBM共同开发,几乎能被所有支持声音的Windows应用程序播放. AIFF - (扩展名为AIF或IEF)音频互换文件格式是为Macintosh计算机和Silicon Graphics (SGI)计算机所共

Halcon的HWindowControl控件在WinForm程序中的使用介绍(重点解决图片缩放的问题)

 Halcon的HWindowControl控件在WinForm程序中的使用介绍(重点解决图片缩放的问题) 2016-12-04 20:11 362人阅读 评论(4) 收藏 举报  分类: Halcon 版权声明:本文为博主原创文章,未经博主允许不得转载. 目录(?)[+] HWindowControl控件初步使用 最近在学习新的视觉处理工具–Halcon软件包,本人学习的主要是HDevelop.Halcon与C#混编以及Halcon与C++混编.这里再多缀一句:11版本后C++编程,包含的是h

horizon桌面池中虚拟机提示缺少无法删除解决方法

horizon桌面池中虚拟机提示缺少无法删除解决方法 在作horizon管理的时候,由于机器突然断电,导致虚拟机文件出现问题,一般我们会将虚拟机移除后重新置备,但是有时候还是会出现如下图文件缺失一直提示删除的情况. 遇到这种情况我们应该怎样解决呢. 1.打开View Composer Server控制台,打开View Composer安装位置,复制安装路径添加到系统的path变量 ![](http://i2.51cto.com/images/blog/201810/08/25fa0b9f295d

Java桌面程序打包成exe可执行文件

前言: 我们都知道Java可以将二进制程序打包成可执行jar文件,双击这个jar和双击exe效果是一样一样的,但感觉还是不同.其实将java程序打包成exe也需要这个可执行jar文件. 准备: eclipse.exe4j(网上有软件和帐号下载) 第一步,将java项目打包成可执行jar文件,首先看一下我的java project结构,Main.java是程序入口类,里面有main函数,config目录是些配置文件,lib是用到的第三方类库 开始打包,Simulate(Java项目)-鼠标右键-E

java应用程序已被安全设置阻止的解决办法(总有一个适合你)

1. 在1月底的一次Java自动更新升级后,我点开已经配置好的Java小程序,赫然看到如下错误: 在网上查找了很多资料,发现就是此次更新的问题,解决方法如下: 控制面板—>Java—>安全—>编辑站点列表—>添加自己的网站为信任网站. 这样一来就可以正常使用了 2.点击:开始-控制面板,选择查看方式为:大图标或小图标,如下图所示 双击java,选择“安全”,把“安全级别”降至“中”,点击“确定” 重启浏览器,运行java,如:http://ai.qqjay.com/gs1/yhua