- 博客(6)
- 问答 (1)
- 收藏
- 关注
原创 swing灵活和重用的艺术: renderer/editor
说到GUI类库的重用有一个很著名的模式:Composite模式。对,一个现代面向对象GUI类库基本上都有这个模式的实现,当然也包括swing.不过早一点如MFC就没有完整的实现,现在来看如果一个GUI类库连基本的Composite模式都没有实现基本上感觉是出土的文物啦! 但是我们来看即便有了Composite模式,但Composite模式通常是构建静态组合,如果要动态的替换一个复...
2010-09-05 14:57:36 141
JavaBean和FieldMap 静态定义和动态构建孰优孰劣?
我们来看一个JavaBean[code="java"]class Bond{private String id;private String name;public void setId(String id){ this.id = id;}public String getId(){ return this.id;}public ...
2009-11-29 22:46:41 267
如何在某个顶层方便的捕获事件线程抛出的异常
有一次看.NET平台的WinForm发现其有提供捕捉这样异常的方法,升至它有默认的异常处理。但是在Swing中,如果某事件处理函数抛出了一个异常,很可能导致事件线程挂掉,这时候界面点击无反应,软件甚至要通过强行关闭才能退出。如果在某顶层做一个最后防御,这样哪个事件处理模块如果抛出未处理异常,也不至于程序莫名的挂掉,顶多输出一个信息告知用户系统错误,我要挂了,然后退出。但是我...
2009-11-29 22:11:38 93
借鉴CSS选择器的思路写了一个SwingSelector
有时候一个Swing画面,是由多个嵌套的面板构成的,但是它们里面的各种栏位的关系却是紧密的。这时候希望将各种处理代码写在最顶层的画面中,但是又无法访问子面板中各栏位的引用,必须又要为子面板添加类似get,set之类的访问函数,有些麻烦。有了SwingSelector可以这样:[code="java"]new SwingSelector(panel, "JTextField").bi...
2009-11-08 23:23:27 103
基于组件事件编程模型的Web框架
传统开发web的人似乎不认同这种框架,认为web开发不应该基于这样的编程模型。但是我觉得只要人机交互稍复杂一点,对交互做基于组件的事件抽象我觉得是很理所当然的,事实上我不觉得我们已经找到了关于这一问题域的更好的抽象。当今现实的GUI框架也几乎都是这样抽象的,然后由于web本身的交互模式并不是如此,但是web承载的东西越来越多,web已经不再是请求响应page而已,它越来越像Applicati...
2009-11-01 22:47:47 116
javaGUI字体讨论
我们知道java有5种逻辑字体,分别是 Serif、Sanserif、Monospace、Dialog 以及 DialogInput。当你在程序中比如UIDefaults ui = UIManager.getLookAndFeelDefaults();ui.put("TextArea.font", new FontUIResource("DialogInput", Font.BOLD, 1...
2009-07-22 19:40:52 451
空空如也
如何在某个顶层方便的捕获事件线程抛出的异常
2009-11-30
TA创建的收藏夹 TA关注的收藏夹
TA关注的人