« 郵便的不安たち# 東 浩紀 朝日文庫 | Main | Mozilla »

2004.05.13

GroupableTableHeaderUI修正点メモ

絵コンテエディタは一応の完成(お絵描き機能は外部AP頼りだけど…)を見た、というか、絵コンテ自体が一応の完成を見てしまったので、次はタイムシートエディタである。まぁレタスというかアニメスタジオIIというか、イメージとしては、こんな感じにしたいのである。
文字列書き換えただけ
ポイントは、グループ化されたヘッダ。
で、こういう、そのまんまなサンプルがある。世界中あちこちにミラーされている名サンプルである(ここもミラーだけど)。
ところが、これはJava1.4では動かない(動かなかった)。JDK1.3からTableColumnコンストラクタがcreateDefaultHeaderRendererを呼ばなくなった為である。いきなりNull Pointer Exception出まくりである。とんでもない酷い後方互換性である。どうもJavaやJava周りのプロダクトはこんなのばっかりである。後方互換性を軽視し過ぎである。特にBEA製品とか(←私情)。
それはさておき、修正方法は、1.3からはTableColumnではなくJTableHeaderがデフォルトレンダラを提供するようになったそうなので、GroupableTableHeaderUI.java中に3箇所ほどある以下を書き換えることでOK。
//TableCellRenderer renderer = aColumn.getHeaderRenderer();
TableCellRenderer renderer = header.getDefaultRenderer();
が、何故かヘッダの区切りが右に微妙にずれるので、同じソースのpaintメソッド中の以下を
//cellRect.width = aColumn.getWidth() + columnMargin;
cellRect.width = aColumn.getWidth() + columnMargin -1; // とりあえず-1したらずれなくなったが…
とすると上手く行った。こちらはいい加減な修正なので怪しい。我が家以外の環境だと却って悪化するかもしれないので注意。

|

« 郵便的不安たち# 東 浩紀 朝日文庫 | Main | Mozilla »

Comments

Thanks

Posted by: viagra | 2009.06.27 at 08:31 AM

The Summoner acts as the persistent element in the game, to be used to track statistics and scores for each player.

Posted by: league of legends riot point generator no survey 2013 | 2015.01.24 at 10:58 AM

Hi, just wanted to mention, I enjoyed this article. It was funny. Keep on posting!

Posted by: http://prokr.com/blog/furniture-transfer-companies-52/ | 2015.07.01 at 05:14 PM

Post a comment



(Not displayed with comment.)




TrackBack

TrackBack URL for this entry:
http://app.cocolog-nifty.com/t/trackback/1190/589376

Listed below are links to weblogs that reference GroupableTableHeaderUI修正点メモ:

» [program]J2SE5.0のSwingの非互換問題 [ねこら対策研究要塞日誌@はてな]
1.4だと なのが、5.0だと こんな事に。上が消えてしまう。困ったなぁ。 そもそもがトリッキーな技だったらしくて、1.2→1.3の時もこういった問題があった。 [Read More]

Tracked on 2004.12.20 at 07:56 PM

» Cialis. [Cialis.]
Multiple orgasms through cialis. Buy cialis. Cialis. [Read More]

Tracked on 2007.06.06 at 02:14 AM

« 郵便的不安たち# 東 浩紀 朝日文庫 | Main | Mozilla »