用java编写的swing程序。如何在主界面中实现刷新的功能,就是让主界面的组件刷新

如题所述

重新加载,先调用MainPanel的removeAII(),再重新添加,最后validate()。或者是MainFrame.getContentPane.removeAII(),总之要remove掉再添加,再validate
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-03-21
让主界面刷新,你可以调用的主窗体的paintAll方法,
很多时候都吧,update().repaint().paintComponents()这些方法一起使用,追问

我现在是定义了一个主窗体MainFrame类,然后又定义了一个主面板类MainPanel,将主面板添加到主窗体中。在面板上显示了很多的标签,标签上的数据都是从数据库中读取的。当我从改变数据库中的数据的时候想要动态的改变标签上的内容,如何实现刷新。我现在就是要解决这个问题,希望能得到帮助,谢谢,能帮助我的话我加分。

追答

你的意思是只要数据库的数据变了,就该表这个panel的显示内容?
如果是这样的话:首先--我没有这么做过,因为java还没有直接监听数据库
我可以给你一个建议:就是当你需要修改数据库的时候就(是你本程序)取读一次数据库,或者移除你要删除的控件,
如果不是你这个程序去修改的,这个就有一点麻烦,可以让其他程序告诉你这个程序数据库修改了,用socket,或者用消息,只要能得到消息也就可以知道该移除什么
最不推荐的是没隔几分钟去读数据库一次。
由于我没有做过这种,我就只能给出这几种建议

追问

我现在是启动一个线程,访问数据库,改变面板显示的类容,但是感觉这样不好,不过我实在想不出其他很好的办法了。不过还是谢谢你的建议。

追答

你的意思就是说不是你写的这个程序去控制修改数据库,那什么什么样的程序去修改呢?让他与你通信,用socket。这样就能最及时修改,也减少数据库的压力

追问

socket我不太熟练,用的不多,你能给我一个例子程序吗?

追答

..............

第2个回答  2012-03-21
在顶层JFrame调用repaint()

用JAVA Swing编写应用程序的界面时如何实现界面的动态更新 如:当点 ...
UpdateUI()如:你需要刷新一个面板,就 panel.UpdateUI();该方法对所有组件容器均适用

Java Swing关于界面刷新的问题!!
这个,你把jpanel对象声明为成全局变量,在主窗体里面去创建,然后通过按钮来改变jpanel对象即可:具体的代码我就不写了,给点关键的给你,仅作参考!我没有编译环境,单词有可能有些错,能表达意思就好,代码如下:class Demo extend Jframe{ private Jpanel panel=null;\/\/这个是你要更改的面板 pri...

现有个ajax写的页面和一个swing界面,如何实现点击界面上的按钮,调用...
用swing编写applet小程序,然后嵌入到页面中,在applet中创建JSObject对象,通过eval调用页面中的js函数,效果如图:图片中的“页面调用”按钮是js按钮,调用的方法是获取文本框的值,然后alert。“java程序调用”按钮,是java小程序中的按钮,点击这个按钮,与上个按钮一样调用同一个js函数,会alert文本框...

使用java swing编写的客户端程序怎样实现自动更新
简单的说,每次启动进程a,进程a调用程序b,程序b是你的swing程序。然后在程序a中设置升级的检查(就是联网,访问webservice),如果有新版,就下载文件,更新程序b,然后再调用。注意 a,b应该是两个进程,至少也是两个classloader,如果你搞不定的话,可以在a升级后,退出。提示用户再次运行。

JAVA swing界面编程,怎么实现点击左边的树节点,然后在右边刷新界面,显 ...
JTree添加一个选择事件的响应器,然后根据事件获取到当前选择的树节点,. 然后读取对应的文字或者图片; 关键代码如下:jt.addTreeSelectionListener(new TreeSelectionListener() { public void valueChanged(TreeSelectionEvent e) { \/\/写入你的逻辑代码 } } 我的阅读器效果如下图(使用的是swing + ...

JAVA SWING中如何通过点击按钮来动态的更新界面里的内容 例如软件里的...
重新添加面板,然后立刻调用resize()方法重构窗口,使窗口布局变化可以立刻就显现出来,完全可以满足楼主的要求 简单还容易,什么替换容器,替换控件,什么的,本质上就是我的这个方法:至于重新设置布局管理器,楼主你实际试一下你就会发现不管用了 http:\/\/zhidao.baidu.com\/question\/311353304.html ...

求助:java swing JPanel组件如何实现刷新
你想改变下拉框的选中值,用刷新是不行的。这不是WEB程序。只能是在按钮事件中 combox.setSelectedIndex();或是value的值来改变选择值。

java中swing窗体美化(swing的控件美化)
怎样在Java中美化按钮控件显得美观?1、,首先明确button是安卓的一个控件,是用java语言写的。2、用JAVA的话可能就是达不到这个效果的,因为JAVA本来做界面的话就不是很好看。你可以尝试用下C#.NET来做。3、在设计界面选中你要更改的BUTTON以后,右下角属性窗口中更改啊。如果你没属性窗口,那么就工具...

用Java SwingWorker类来创建进度条
SwingWorker类是Java Swing库中用于执行异步任务的核心组件,它能够使得开发者在主线程中保持界面的响应性,同时执行耗时操作,避免阻塞GUI。SwingWorker类实现了RunnableFuture接口,使得它可以提供执行结果,并支持并发任务的处理。SwingWorker类有两大核心方法:doInBackground()和publish()。doInBackground()方法...

用java的swing做界面,想通过在同一个窗口进行面板的切换来达到跳转界面...
方法一: 可以使用JTabbedPane 来实现,代码如下 JTabbedPane jtp = new JTabbedPane();JPanel jp1 = new JPanel();JPanel jp2 = new JPanel();jtp.add("面板1", jp1);jtp.add("面板2", jp2);方法二: (推荐) 跳转界面 , 还是需要从1个窗口到另外1个窗口, 这样正规点, 数据可以从第一...

相似回答