[表示 : 全て 最新50 1-99 101- 201- 301- 401- 2chのread.cgiへ]
Update time : 03/03 09:58 / Filesize : 99 KB / Number-of Response : 402
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Java低速GUI Swing 8



1 名前:デフォルトの名無しさん [2008/11/21(金) 11:24:21 ]
ハードウェアの高スペック化、描画アルゴリズムの変更、JavaVMの高速化に伴い、パフォーマンスの問題は改善されています。
しかしながら、"Java"というだけで未だに敬遠されるのが現状。
そんなSwingと引き続き付き合っていくみんなのスレッドです。

Java低速GUI Swing 7
pc11.2ch.net/test/read.cgi/tech/1204155623/
Java低速GUI Swing 6
pc11.2ch.net/test/read.cgi/tech/1190807478/
Java低速GUI Swing 5
pc11.2ch.net/test/read.cgi/tech/1161139809/
Java低速GUI Swing 4
pc8.2ch.net/test/read.cgi/tech/1140533866/
Java低速GUI Swing 3
pc8.2ch.net/test/read.cgi/tech/1121700954/
Java低速GUI Swing 2
pc8.2ch.net/test/read.cgi/tech/1095398949/
Java低速GUI Swing
pc5.2ch.net/test/read.cgi/tech/1062271447/l50

29 名前:デフォルトの名無しさん [2008/11/25(火) 23:06:15 ]
ありません。

30 名前:デフォルトの名無しさん mailto:sage [2008/11/25(火) 23:15:25 ]
おお…、無いですか。ありがとうございました。

31 名前:デフォルトの名無しさん mailto:sage [2008/11/25(火) 23:42:14 ]
JComboBoxについて質問させてください。

現在、コンボボックスのプルダウン時の表示項目を
個別にDISABLEDにさせられる様にしようとしてます。

表示はCellRendererでどうにかなったものの、マウスで
DISABLEDにした項目をクリックすると選択が出来てしまいます。
この現象を防ぐためにはどのようにすればいいのでしょうか?

よろしくお願いします。

32 名前:デフォルトの名無しさん mailto:sage [2008/11/26(水) 00:30:08 ]
java.sun.com/docs/books/tutorial/uiswing/dnd/droplocation.html
この例のようなやり方で自作コンポーネントへ、TransferHandlerによるDnDでドロップ位置の表示を行おうとしています。
この方法でsetDropLocation(←自作コンポーネントに作成したアクセサ)によりDropLocationを設定すべき場所は、TransferHandler内ではどの場所でしょうか?

入力しようとするときに表示させるものなので、現在は
TransferHandler#canImport(TransferSupport)
内でsetDropLocation(support.getDropLocation())
としています。
一応表示はされますが、この方法ではドロップターゲットが変わった場合にsetDropLocation(null)とできないため、ドロップ位置の表示が消えません。
何かドロップ位置を表示するスマートな方法はありませんでしょうか?

33 名前:デフォルトの名無しさん mailto:sage [2008/11/26(水) 11:00:19 ]
JListはsetListData()でオブジェをセットできますが、
JTableはなにを使えばオブジェをセットできますか?


34 名前:デフォルトの名無しさん mailto:sage [2008/11/26(水) 11:51:40 ]
>>28
JTextArea を入れるコンテナのレイアウトを工夫する。
たとえば BorderLayout では
EAST と WEST のコンポーネントは
横幅が preferred size の横幅に固定され、
高さはコンテナのサイズによって変わる。


35 名前:デフォルトの名無しさん mailto:sage [2008/11/26(水) 12:13:47 ]
JWindow上のコンポーネントのツールチップを表示させるにはどのようにすればよいのでしょうか?

36 名前:デフォルトの名無しさん mailto:sage [2008/11/26(水) 12:35:26 ]
>>35
普通はどうやってるの?
JWindowでだけ特殊だという意味?
ツールチップの設定の仕方自体を知らないという意味?


37 名前:デフォルトの名無しさん mailto:sage [2008/11/26(水) 12:38:26 ]
いえ、普段JFrameにコンポーネントのせていて、元々対応していないものであればToolTipManagerで登録して・・のような流れで表示させていたのですが、JWindow(JFrame以外のwindow?)にのせてみると表示されなくなったのです。



38 名前:デフォルトの名無しさん mailto:sage [2008/11/26(水) 12:58:28 ]
>>37
普通の使い方は、JComponent#setToolTipText()でしょ。
で、うろ覚えだけど、JComponent#setToolTipText()でString引数がnullかどうかで、
ToolTipManagerに登録(registerComponent(JComponent),unregisterComponent(JComponent))されるように実装されてたはず。

なので、
>元々対応していないもの
これの意味が分からない。
ToolTipManagerはそもそも、JComponentしか受け付けないはずだし、
JComponentであれば、ツールチップを表示させられる。
であるのに、元々対応していないものとは?

あとは、JFrameを使用しているほうのバージョンでは、
setInitialDelay()等のhogeDelayプロパティを変更しているとか。
ツールチップを無効にしているとか。
JFrameを使用しているほうのバージョンとJWindowのコードとの差を検査した方が良いと思う。


39 名前:デフォルトの名無しさん mailto:sage [2008/11/26(水) 13:17:37 ]
>>37
38です。
ちょっとコード書いてみたけど、たしかに動かない。。すまん。
JWindow,ToolTipManagerのソース見たほうが良いかも。
class Hoge{
public static void main(String[] args){
JWindow window = new JWindow();
//JFrame window = new JFrame();
JButton buton = new JButton("Button");
buton.setToolTipText("tip");
window.getContentPane().add(buton);
window.setBounds(0, 0, 450, 450);
window.setVisible(true);
}
}

40 名前:デフォルトの名無しさん mailto:sage [2008/11/26(水) 13:20:43 ]
>>39のコード
EDTで起動してないとこは大目にみて、修正してね。

41 名前:デフォルトの名無しさん mailto:sage [2008/11/26(水) 13:53:35 ]
理由はよく分からないけど、
Frame を表示させないで
Window だけを表示すると
ちゃんと動作しないことがある。


42 名前:デフォルトの名無しさん mailto:sage [2008/11/26(水) 20:29:30 ]
ownerなしのJWindowだと、フォーカスが取れないからじゃね?
JFrameで setUndecorated(true) と setAlwaysOnTop(true)くらいやっとけば、代わりになるんじゃね?

43 名前:デフォルトの名無しさん mailto:sage [2008/11/26(水) 21:15:51 ]
Jtableって何行まで行があるとかわかるクラスある?
あったら教えて。

44 名前:デフォルトの名無しさん mailto:sage [2008/11/26(水) 21:27:27 ]
>>43
行数なら、JTable,TableModelだけど、
言ってるのは、多分、有効なデータがある最大行インデックスってことだと推測するなら、
そんなapiありません。

45 名前:デフォルトの名無しさん mailto:sage [2008/11/26(水) 22:39:15 ]
JTable自体にメソッドついてるよ、getRowCount()が。

46 名前:デフォルトの名無しさん mailto:sage [2008/11/26(水) 23:47:01 ]
>>45
JTable#getRowCount()やTableModel#getRowCount()じゃなく、
これ系統の話じゃないのか
ttp://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=47155&forum=7&14


47 名前:デフォルトの名無しさん mailto:sage [2008/11/27(木) 00:05:16 ]
「Jtableって何行まで行がある」かとしか読み取れない



48 名前:デフォルトの名無しさん mailto:sage [2008/11/27(木) 00:50:48 ]
そうか。
個人的には「何行ある」と「何行まで行がある」では違うと思うけど。
本人じゃないから分からないけどさ。

49 名前:デフォルトの名無しさん mailto:sage [2008/11/27(木) 00:59:26 ]
43の教えてクンぶりはあまりといえばあまりなんだけど
「何行ある」と「何行まで行がある」は双方どう違うのか興味が出てきた

50 名前:デフォルトの名無しさん [2008/11/27(木) 01:02:41 ]
平和だな〜

51 名前:デフォルトの名無しさん mailto:sage [2008/11/27(木) 10:50:13 ]
JTextFieldに入力した文字をリストに格納したいんだけど、
JTextFieldの入力が終わったって判断するにはどうしたらいいんだ?
イメージではフォーカスがかわった時イベントを起こすようにしたいんだけど

52 名前:デフォルトの名無しさん mailto:sage [2008/11/27(木) 10:55:27 ]
addFocusListenerでいんじゃね?

53 名前:デフォルトの名無しさん mailto:sage [2008/11/27(木) 11:01:45 ]
focusLost使ってフォーカス変わったタイミングで格納するわ

54 名前:デフォルトの名無しさん mailto:sage [2008/11/27(木) 12:55:10 ]
>>51
エンターを押してもらう

55 名前:デフォルトの名無しさん mailto:sage [2008/11/27(木) 19:58:14 ]
JFormattedTextField を文字列(または空文字列)でコンストラクトし、
value に関するプロパティのイベントを捕捉すれば、いい感じかも。

フォーカスが外れたりリターンキーが押されたりしたときに
(文字列が変わってれば)イベントが発生するっぽい。

56 名前:デフォルトの名無しさん mailto:sage [2008/11/28(金) 11:02:32 ]
現時点において、世間で一番成功したSwingアプリってなんだろ?
CabosってSwingアプリだっけ?

ム板で聞いてもバイアスがかかると思うので、
IDE各種(Eclipse, NetBeans, etc)と2ch専ブラ(V2C,etc)は却下。

いやさ、実行系絡みのトラブルシュート対策のページを
パクらせてもらおうと思って。

57 名前:デフォルトの名無しさん mailto:sage [2008/11/28(金) 13:38:15 ]
V2Cだろ



58 名前:デフォルトの名無しさん mailto:sage [2008/11/28(金) 13:48:43 ]
jEdit だろ

59 名前:デフォルトの名無しさん mailto:sage [2008/11/29(土) 03:43:20 ]
limewire

60 名前:デフォルトの名無しさん mailto:sage [2008/11/29(土) 04:37:51 ]
外為どっとコムww。なぜかFirefoxで動かないけど。
やっぱリアルタイム性のあるとこかな

61 名前:デフォルトの名無しさん mailto:sage [2008/11/29(土) 09:11:32 ]
jude

62 名前:デフォルトの名無しさん mailto:sage [2008/11/30(日) 19:08:08 ]
JListにはJTreeみたいな編集機能はないんかの?

アイテムの名前変更できるようにしようとして、ぐぐってもなんも引っかからんぜ

63 名前:デフォルトの名無しさん mailto:sage [2008/11/30(日) 19:31:01 ]
ないなぁ
けど実装はそんなに難しくないよ

JTableを1列で、とかだめ?w

64 名前:デフォルトの名無しさん mailto:sage [2008/11/30(日) 20:19:02 ]
実装は難しくないのか。

まだ容易されてる入り口と、ぐぐって出てくる手法でしか作ってないから想像もつかないぜ

JListとJTableを組み合わせて使ってるから、JTableのアイテムを編集させてみる。
気が向いたら、その難しくない実装とやらをがんばってみるかな

65 名前:デフォルトの名無しさん mailto:sage [2008/11/30(日) 20:48:41 ]
JTableのソースを見て、CellEditorを中心に見てみると結構参考になるかも。

66 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 22:47:32 ]
JScrollPaneのViewportViewにJTreeを二つ設置したJPanelを指定したのですが
スクロールペインの中央にJTreeが並んでしまって困ってます
BoxLayoutでJPanelにJTreeを設置するとテキストがまともに表示されない(後半が途切れる)ので
GridBagLayoutで白紙のパネルをJTreeの下に設置し、JTreeを左上になんとか表示してます
こんな無理矢理な方法を使わず、素直にJTreeを二つスクロールペインの左上に設置する方法は無いでしょうか?
何方かご教授下さい…

67 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 16:48:33 ]
今ひとつ分からないけどこれでだめ?
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);

JPanel viewportView = new JPanel(new FlowLayout(FlowLayout.LEFT,0,0));

JTree tree1 = new JTree();
JTree tree2 = new JTree();

viewportView.add(tree1);
viewportView.add(tree2);

frame.add(new JScrollPane(viewportView));
frame.pack();
frame.setVisible(true);



68 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 16:50:03 ]
みすってたー
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);

FlowLayout fl = new FlowLayout(FlowLayout.LEFT,0,0);
fl.setAlignOnBaseline(true);
JPanel viewportView = new JPanel(fl);

JTree tree1 = new JTree();
JTree tree2 = new JTree();

viewportView.add(tree1);
viewportView.add(tree2);

frame.add(new JScrollPane(viewportView));
frame.pack();
frame.setVisible(true);

69 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 22:15:15 ]
>>68
ありがとうございます!明日試してみます!…ノートPC持って帰ってくるの忘れたorz
口で説明しても伝えられない気がしてきたので簡易ながら図解にしてみました。
ttp://toku.xdisc.net/cgi/up/ttt/nm6024.jpg.html
上の理想像のように配置したいのですが、BoxLayoutだと下図のようにテキストが途切れます…

70 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 22:46:19 ]
JTreeを2つ使う理由がわからん。
JTreeを1つで、setRootVisible(false)にすればええやん。

71 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 06:45:15 ]
こんな感じかな

panel.setLayout(new BorderLayout());
panel.add(tree1, BorderLayout.NORTH);
panel.add(tree2, BorderLayout.CENTER);
scrollPane = new JScrollPane(panel);


72 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 19:34:31 ]
>>70
それやったら何も表示されなくて…
JTree二つあった方がラクかなぁ?と思って組み始めたんです。

>>71
tree2が中央に来ました…orz

73 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 21:30:24 ]
>>72
>>70 でやったときにTreeNodeが表示されないと言っている?TreeModelの使い方は理解してる?

ここ↓をひととおり読んでみた?
java.sun.com/docs/books/tutorial/uiswing/components/tree.html

74 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 22:31:32 ]
いつの間にか jdk 6u11 が出てるな…

75 名前:デフォルトの名無しさん mailto:sage [2008/12/05(金) 00:49:36 ]
今日JavaFXリリースだというのにまったく盛り上がってないなw

76 名前:デフォルトの名無しさん mailto:sage [2008/12/05(金) 00:53:24 ]
忙しくて試す時間ないんだけど、どんな感じ?

77 名前:デフォルトの名無しさん [2008/12/05(金) 05:22:12 ]
もういらねーんだよ。うじゃうじゃとアホなスクリプト言語とか。



78 名前:デフォルトの名無しさん mailto:sage [2008/12/06(土) 12:47:42 ]
JavaFX結構おもしろいじゃん
ただ何やってるか分からんけど起動がえらい遅い

79 名前:デフォルトの名無しさん [2008/12/06(土) 23:29:05 ]
ブラウザからデスクトップにドロップするやつ試したやついる?
あとアニメとかはどうだ。滑らかに動くのか。
とにかく生情報がほしいな。

自分はOSバージョンの関係で試せないけど、試したやつ報告よろしく

80 名前:デフォルトの名無しさん [2008/12/07(日) 01:58:37 ]
JavaFXはスレ違い

81 名前:デフォルトの名無しさん mailto:sage [2008/12/07(日) 02:03:37 ]
Java FXってGUIはSwingそのものなの?

82 名前:デフォルトの名無しさん mailto:sage [2008/12/07(日) 02:17:15 ]
このスレの解答者はカスしかないけどから一応こたえてやると・・・
siwngはjavacでコンパイルされてバイトコードになるためjvm共通のwidgetになるから
javafxcでJFrame{}とかすれば当然JFrame.classが呼ばれてswingそのものを呼び出しているといえる。

83 名前:デフォルトの名無しさん mailto:sage [2008/12/07(日) 07:32:52 ]
「WOLF RPGエディター」とは? 
・高度なRPG開発が可能な、完全無料のゲーム作成ツールです。
・雰囲気はRPGツクール2000に近い。RPGツクール2000で自作システムを作りこむ際に
 不満だったところがいろいろ解消されていて、かなり自由度が高いです。ただし
 その分初心者には難しいかも。すでにツクール2000で自作システムを組むのに
 慣れた人やRPGツクールでは物足りないけどプログラミングはちょっという方にお勧め。
・作成したゲームは自由に配布したり、コンテストに投稿することも可能。
 また本ソフトを持たない人でもプレイ可能!ファイル暗号化も完備してるよ!
・要望、不満点、バグ報告などなど書き込みお願いします。今もどんどん進化中です。
・それとマップやキャラなどのドット素材もじゃんじゃん募集中ですので
 一度サイトにお越しくださいませ。
・このツールで作ったゲームをサイトで紹介してるから、ダウンロードしてどういう
 ゲームが作れるのか見てみてね。

2ちゃん本スレ
pc11.2ch.net/test/read.cgi/gamedev/1226294070/l100

84 名前:デフォルトの名無しさん mailto:sage [2008/12/07(日) 14:02:31 ]
このスレの解答者はカスしかないけどから
このスレの解答者はカスしかないけどから
このスレの解答者はカスしかないけどから
このスレの解答者はカスしかないけどから
このスレの解答者はカスしかないけどから
このスレの解答者はカスしかないけどから

85 名前:デフォルトの名無しさん mailto:sage [2008/12/07(日) 14:36:13 ]
>>84
>>82 の回答を見ると納得してしまうなw

86 名前:デフォルトの名無しさん mailto:sage [2008/12/07(日) 14:38:40 ]
>>84
×解答
○回答

87 名前:デフォルトの名無しさん mailto:sage [2008/12/07(日) 15:51:51 ]
そろそハードウェア対応のCompositeを増やしてくれないものか…
加算半透明が欲しいけど、そういう人は少ないのかなあ。



88 名前:デフォルトの名無しさん mailto:sage [2008/12/07(日) 16:07:38 ]
javafxはどこで話せばいいの?

89 名前:デフォルトの名無しさん mailto:sage [2008/12/07(日) 17:21:02 ]
ここかJDK7のスレッドだろうね

90 名前:デフォルトの名無しさん mailto:sage [2008/12/07(日) 19:26:39 ]
jdk1.4からpaintが改善されてきてjdk1.6でほぼnativeと同等になったから、そろそろそういうブレンドとかのクラスも出てくるんじゃないか?
今はCPUに計算させて力でごり押しでもいいだろうけど、本来のやり方は力業計算はjoglとかハードの方を使って(経由して)計算させるものなのかと思う。
そういうの説明してるサイトはあまりないけどね。


91 名前:デフォルトの名無しさん mailto:sage [2008/12/07(日) 21:36:37 ]
すごく初歩的なことかもしれないんですが、packって必ず呼ばないといけないんでしょうか?

92 名前:デフォルトの名無しさん mailto:sage [2008/12/07(日) 21:53:12 ]
いいえ
packしたい時に呼べばいいだけです

93 名前:デフォルトの名無しさん mailto:sage [2008/12/07(日) 22:33:58 ]
packは使うべきかどうかどう判断すればよいのでしょうか?

94 名前:デフォルトの名無しさん mailto:sage [2008/12/07(日) 22:45:50 ]
packがやることは分かる?

95 名前:デフォルトの名無しさん mailto:sage [2008/12/07(日) 22:53:31 ]
各コンポーネントの推奨サイズを見て、ウィンドウ全体のサイズを決定、でしょうか?

96 名前:デフォルトの名無しさん mailto:sage [2008/12/07(日) 23:12:21 ]
ウィンドウを推奨サイズにしたい場合は pack()
自分でサイズを指定したい場合は
setSize() とか setBounds() とか


97 名前:デフォルトの名無しさん mailto:sage [2008/12/09(火) 19:16:25 ]
JDK1.6u11になってNimbusを今まで作ってきたアプリでためしてみたんだが微妙だなぁ。
こっちの書き方も悪いんだけど、それを差し引いてもあちこちにデザインの破綻が起きる。
画像アイコンを入れたボタンやカスタマイズした部品の修正が大変。
Metalのほうが細かい操作面や様々なケースで、神経が行き届いていたように思われ。



98 名前:デフォルトの名無しさん mailto:sage [2008/12/09(火) 22:19:01 ]
addElement
public void addElement(Object obj)指定されたコンポーネントをリストの末尾に追加します。
パラメータ:
obj - 追加されるコンポーネント

DefaultListModelのaddElementのリファレンスを読んでコンポーネントも追加できるのか…?と思い
JPanelをaddしてみたんですが、文字列らしきもの(ポインタ的な何か…?)が表示されるだけで上手く行きません。
そもそもコンポーネントの追加という意味を私が取り違えているのでしょうか?お教え下さい

99 名前:デフォルトの名無しさん [2008/12/09(火) 22:29:41 ]
普通はUIを頻繁に変えたりしない思うけどね。
昔のxのウィンド・マネジャの乱立とかwinデスクトップテーマの流行を思い返す。
system uiのwinでぽっぽアップしたときのメニュー文字のギャップをもう少し広げてくれると
win ui (win classic ui)とほぼ同じでハッピーなんだけど。

100 名前:デフォルトの名無しさん mailto:sage [2008/12/09(火) 22:49:05 ]
>>98
コンポーネントは広い意味でのコンポーネントって表現だと思う。
英語版のjavadocが"Component"になっているから、そう訳したんだと思う。
Objectが引数だから、JPanelだろうが、通常やらないだろうけど、Timerだろうが何でも格納はできる。

表現が的確か分からないけど、ListModelは単なるデータストアであって、
ListModelから取り出したデータを、どう表現するかはCellRendererの役目。

一度、java tutorialとかで基本的なところを勉強するといいと思う。

101 名前:デフォルトの名無しさん mailto:sage [2008/12/09(火) 22:52:29 ]
>>98
デフォルトのレンダラでは対応していないのでJPanelを要求通りに表示できるレンダラに変更

102 名前:デフォルトの名無しさん mailto:sage [2008/12/09(火) 23:14:46 ]
>>99
JMenuItemのsetMargin()とか呼んでみたら?

ポップアップメニューのL&Fの更新ってプログラマーの責任だったっけ。
JComponent#setComponentPopupMenu()だけでは自動更新してくれなかった記憶が。

103 名前:デフォルトの名無しさん mailto:sage [2008/12/10(水) 21:52:27 ]
>>100-101
本当にありがとうございます。CellRenderer改変して無事に完成しました
JPanel上にBorderLayoutでJLabelを2つ設置してそれを返すようにしたら想像通りのものに…!

JLabelの背景色変更しても色変わらなくて、2時間程経ってからsetOpaqueの存在を知りました。
もっと情報検索を上手いとこ出来るようになりたいですorz

104 名前:デフォルトの名無しさん mailto:sage [2008/12/11(木) 01:05:13 ]
>>102
>ポップアップメニューのL&Fの更新ってプログラマーの責任だったっけ。
1.7.0で修正されたはず。

105 名前:デフォルトの名無しさん mailto:sage [2008/12/11(木) 02:07:02 ]
>>104
1.7か。遠い未来・・・でもないがまだまだだろうなぁ

106 名前:デフォルトの名無しさん mailto:sage [2008/12/11(木) 03:32:06 ]
javax.swing.undoではまったのでメモ。
例えば、文字列の置換のような削除、挿入という複数の処理を1回で元に戻したい場合は
UndoManagerを入れ子にする。

UndoManagerを2つ用意して、基本はサブに追加する。一塊の処理が終わったらend()を呼んでメインに追加する。

void undoableEditHappened(UndoableEditEvent e) {
  sub.addEdit(e.getEdit());
  if (!compound) {
    sub.end();
    main.addEdit(sub);
    sub = new UndoManager();
  }
}

ちなみに普通にUndoをするだけならリスナにUndoManagerを追加するだけで出来ます。

JTextField tf = new JTextField();
tf.getDocument().addUndoableEditListener(new UndoManager());

107 名前:デフォルトの名無しさん mailto:sage [2008/12/12(金) 11:25:31 ]
HTMLDocument/HTMLEditorKitってなんでこんなに使いづらいんだブツブツ…



108 名前:デフォルトの名無しさん mailto:sage [2008/12/13(土) 12:36:19 ]
>>107
わー、同士よ。使ってる人、他にもいたんだ。

6u10以降、javax.swing.text.html
でちゃんと日本語HTML表示できている?

WebKitベースの新APIが1.7で登場するという噂はどうなったんだ…

109 名前:デフォルトの名無しさん mailto:sage [2008/12/13(土) 15:29:45 ]
>WebKitベースの新APIが1.7で登場するという噂はどうなったんだ…
JWebPaneでしょ?
JWebPane は、Java7からってことになってるけど、Java7は1年半後らしいからね、いつになるやら。
たしか、AIRはWebBrowserコンポーネントを提供してるから、
JavaFXがAIRに対抗するために、リリース時期が早まるんじゃないかと少し期待してる。

110 名前:デフォルトの名無しさん [2008/12/13(土) 16:33:11 ]
JavaやってるとWindowsのexeが作れない。。
また、SwingやAWTの設計でGUI画面作るのもちょっといやだ。
Windows専用のJavaGUIライブラリどこかの会社でうまいことつくってくれないかな?
できれば、Delphi作ってる会社が作ってくれたりするといい。MSでもいいけど絶対作ってくれ無そう。

最悪、Javaで作ったファイルをWindows用exeに変換してくれるだけでもいい。できれば、UIもWindowsっぽくして・・

111 名前:デフォルトの名無しさん mailto:sage [2008/12/13(土) 16:40:45 ]
そんな思いまでしてjavaで作らなくても
そういう要求って仕事でやってるわけじゃないよね

112 名前:デフォルトの名無しさん mailto:sage [2008/12/13(土) 16:52:18 ]
ネタ乙

113 名前:デフォルトの名無しさん mailto:sage [2008/12/13(土) 17:41:15 ]
>>110
Excelsior JET + SWT

どっちにしろ Swing とは関係ないネタだ。

114 名前:デフォルトの名無しさん mailto:sage [2008/12/13(土) 18:24:26 ]
exewrapで十分だろ
Cocoaで作りたいとかいうならまだしもWindows寄りの設計って嬉しいか?

115 名前:デフォルトの名無しさん mailto:sage [2008/12/13(土) 21:51:21 ]
WinAPIもMFCも面倒なだけ

116 名前:デフォルトの名無しさん mailto:sage [2008/12/14(日) 00:27:37 ]
>>113
あるいはgcjという手もあるな。
Swingと関係ないのは確かにその通りだが。

117 名前:デフォルトの名無しさん mailto:sage [2008/12/14(日) 01:18:32 ]
>>110
>JavaやってるとWindowsのexeが作れない。。
つJSmooth

>また、SwingやAWTの設計でGUI画面作るのもちょっといやだ。
どこら辺が気にいらんの?
俺、SwingやAWTからGUIに入ったんでよくわからないんだ。
.netもやってるけど、上っ面撫でてるだけならそんなに違わないと
思ったが。




118 名前:デフォルトの名無しさん mailto:sage [2008/12/14(日) 01:43:49 ]
だからネタだっていってんだろw

119 名前:デフォルトの名無しさん mailto:sage [2008/12/16(火) 15:03:36 ]
うまい方法が見つからないのでちょっと相談。コンポーネントの配置の仕方なんだけど。

JLabel [JTextField]
JLabel [JTextField]

というように、4の部品がならんでいる。
JTextFieldは、JFrameサイズに応じて幅一杯まで伸び縮みできるようになってほしい。
JLabelは文字列のサイズで固定されてほしい。
ただし、上段と下段でJTextFieldの位置をきっちり揃えたい。

GridBagLayoutだと、位置はきちんとそろうけど、JTextFieldが伸び縮みできない。
GridLayoutだとJLabelとJTextFieldの幅が等間隔に割り付けされてしまうのでだめ。
1段分をBorderLayoutのWESTにJLabel,CENTERにJTextFieldを入れ、GridLayoutで縦にならべると、
だいぶ希望に近づくが、JLabelに入る文字列の長さが異なると、JTextFieldの頭の位置が上下でそろわない。
なんかいい方法ないかなぁ・・・

120 名前:119 mailto:sage [2008/12/16(火) 15:10:57 ]
それから
PreferredSizeでJLabelのサイズを固定する方法も考えられるけど、
LaFが変更されたとき崩れない保証がなくなるので、できるだけレイアウトマネージャだけで解決したい。

121 名前:デフォルトの名無しさん mailto:sage [2008/12/16(火) 15:44:19 ]
>>119
GridBagConstraintsを適切に設定してないんじゃないか

public class Test {
public static void main(String[] args) {
JFrame frame = new JFrame();
frame.setLayout(new GridBagLayout());
frame.add(new JLabel("Label 1:"), new GridBagConstraints(0, 0, 1, 1, 0, 0, GridBagConstraints.LINE_START, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 0, 0));
frame.add(new JTextField(), new GridBagConstraints(1, 0, 1, 1, 1, 1, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(0, 0, 0, 0), 0, 0));
frame.add(new JLabel("Label 2:"), new GridBagConstraints(0, 1, 1, 1, 0, 0, GridBagConstraints.LINE_START, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 0, 0));
frame.add(new JTextField(), new GridBagConstraints(1, 1, 1, 1, 1, 1, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(0, 0, 0, 0), 0, 0));
frame.pack();
frame.setVisible(true);
}
}

122 名前:119 mailto:sage [2008/12/16(火) 19:16:21 ]
>>121
ありがとう。
IDEのGUIエディタが生成したコードとにらめっこしたのですが、
weightx,weightyの値が1に設定されていなかったのが原因でした。
私はこまかいところに神経が行き届いていなかったようです。
勉強になりますた!

123 名前:デフォルトの名無しさん mailto:sage [2008/12/16(火) 21:37:57 ]
GroupLayoutが適切すぎる

124 名前:せっかく作ってみたので貼ってみるテスト mailto:sage [2008/12/16(火) 22:01:12 ]
JFrame frame = new JFrame();
JLabel label1 = new JLabel("Label 1:");
JLabel label2 = new JLabel("Label 2:");
JTextField field1 = new JTextField(10);
JTextField field2 = new JTextField(10);

GroupLayout layout = new GroupLayout(frame.getContentPane());
frame.setLayout(layout);
layout.setAutoCreateGaps(true);
layout.setAutoCreateContainerGaps(true);

layout.setHorizontalGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup()
.addComponent(label1)
.addComponent(label2))
.addGroup(layout.createParallelGroup()
.addComponent(field1)
.addComponent(field2)));

layout.setVerticalGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(Alignment.BASELINE)
.addComponent(label1)
.addComponent(field1))
.addGroup(layout.createParallelGroup(Alignment.BASELINE)
.addComponent(label2)
.addComponent(field2)));

frame.pack();
frame.setVisible(true);


125 名前:デフォルトの名無しさん mailto:sage [2008/12/16(火) 22:03:27 ]
>>121
GridBagConstraints に引数付きのコンストラクタがあることを
初めて知ったよ。
IDEの吐くコードでのみ使えって、ドキュメントにはあったけど。

>>123
いつのまにか java.awt でないレイアウトマネージャが増えてくね。

126 名前:デフォルトの名無しさん mailto:sage [2008/12/17(水) 21:58:56 ]
JTabbedPaneでタブを表示させてるんだけど
特定の設定になった時はタブが5枚あったら、その3番目と5番目だけを非表示にしたいんだ
setEnabledAtで選択不可には出来たけど、出来ることなら非表示にしたい…
機能的には選択不可で問題無いが、見栄え的に半端な位置のタブが選択不可になってるのはみっともなくて。
何か良い解決策は無いだろうか?orz

127 名前:デフォルトの名無しさん mailto:sage [2008/12/17(水) 22:09:41 ]
タブのペインをグレイアウトさせる。



128 名前:デフォルトの名無しさん mailto:sage [2008/12/18(木) 11:38:28 ]
タブを削除する

129 名前:デフォルトの名無しさん mailto:sage [2008/12/18(木) 21:48:35 ]
実際に試してないから成功するか分からないけど、
非表示にしたいタブを getTabComponentAt() で取得して
setPreferredSize() で推奨サイズをゼロにする。
あるいはサイズがゼロのコンポーネントを用意して
setTabComponentAt() を呼ぶ。







[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](*・∀・)<99KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef