JComponent有一个方法setBounds(x,y,w,h),并且Sun公司已经完全实现,我想覆盖或者重写该方法,如何实现?
由于已有的程序中生成了许多各式各样的JComponent,让每个JComponent覆盖父类的该方法显然是不可能的。
有没有如代理接口的方法实现代理JComponent的setBounds(x,y,w,h)的方法。
不管过程多复杂,只要能实现就好。谢谢。
由于已有的程序中生成了许多各式各样的JComponent,让每个JComponent覆盖父类的该方法显然是不可能的。
有没有如代理接口的方法实现代理JComponent的setBounds(x,y,w,h)的方法。
不管过程多复杂,只要能实现就好。谢谢。
解决方案 »
- 问一个类的加载问题
- java 图片压缩处理(压缩成A4大小,72dpi,黑白)急。。。。。
- 请教一个 JSF,managed-bean.xml配置问题
- 有偿转让Java即时通信工具源程序及设计文档
- 想用java写个表单自动提交的小程序。如何实现快速加载网页?如何提交?
- 在java中,一个窗口如何控制另一个窗口如关闭
- 高分求解:用java怎么扫描端口?一定给分
- 请各位谈谈java中的匿名类的用法。
- 又一个有关JTable的有难度的问题?
- weblogic6.0,好怪,在console 中新建立jdbc connection pool时,按下create按钮没效果
- 请结合GridBagLayout中weight的指定来帮我理解下一面这段话?
- Hibernate如何实时更新数据库
API上这样写的~~
虽然从技术上讲可以在继承自 JComponent 的所有对象上设置边框,但是很多标准 Swing 组件的外观实现无法很好地使用用户设置的边框。通常,如果希望在标准的 Swing 组件而不是 JPanel 或 JLabel 上设置边框时,我们建议将该组件放入 JPanel 中,并在 JPanel 上设置边框。
LZ没有打算设置边框啊,你是不是把setBounds看成setBorder了:)
没有必要重新写
编程时只考虑了在显示器分辨率为1024*768下的情况,
现在客户要求显示到分辨率更大的情况下,
结果我要么重写所有的setBounds方法,
实际上重写所有的setBounds方法已经是不可能的了,
因为我的程序中估计已经生成有10000个控件。
所以我想问一下有没有如代理接口似的实现代理方法,
或者其它的什么方法重新实现JComponent的setBounds方法
Component c=yourComponent;//不管你的组件是什么
c.setBounds(...);
static setBounds(Component c,..){
c.setBounds(...);
}
===================================================
当然有办法,我可以获得当前系统的分辨率大小,然后求出与设计时大小的比例,
原有的setBounds方法不作任何改变,程序就能适用于任何分辨率大小的系统我现在也想采用自己写一个静态方法:
static setBounds(Component c,..){
c.setBounds(...);
}
可是感觉不爽,那样的话相当于借助于第三方类,而且以后所有的组件setBounds都只能通过该方法
===================
没看明白,那所有的Java组件又得继承我写的Component,最后我不得不重写一套Swing
看来CSDN上高手都不怎么舍得帮忙呀。