- PR -

JScrollPaneとJSplitPaneの併用について。

投稿者投稿内容
山本 裕介
ぬし
会議室デビュー日: 2003/05/22
投稿数: 2415
お住まい・勤務地: 恵比寿
投稿日時: 2006-01-26 03:32
ImageIcon を包含した JLabel を設定した場合だけ発生するのでしょうか?
ImageIcon について戸惑う点があるのであれば、まずスクロールペインに焦点を当てるために別のコンポーネントを配置して調査してはいかがでしょう。
KDS
常連さん
会議室デビュー日: 2005/07/15
投稿数: 38
投稿日時: 2006-01-26 13:41
そうですね
下のコードを追加しようとすると、
簡単に出ました。

やはりImageIconを包含したら扱い方が異なってくるんでしょうか??

コード:
JLabel label = new JLabel("Hello");
label.setLocation(10, 10);
label.setSize(80, 25);
panel.add(label);

山本 裕介
ぬし
会議室デビュー日: 2003/05/22
投稿数: 2415
お住まい・勤務地: 恵比寿
投稿日時: 2006-01-26 15:14
「スクロールバーが表示されない」ことと、「ImageIconのコンストラクタでNullPointerExceptionがでること」どちらを問題としているのでしょう?
焦点を明確にしましょう。
なにがわからないのかわからないのですが、「JSplitPaneを使わずに画像を表示して、スクロールバーを表示する」ことはできているんですよね?
KDS
常連さん
会議室デビュー日: 2005/07/15
投稿数: 38
投稿日時: 2006-01-27 01:20
インギさん、何度も何度も書き込みありがとうございます。

「JSplitPaneを使わずに画像を表示して、スクロールバーを表示する」はできます。

そして、JSplitPaneを使って表示したいのですが、
その際に片方の画面だけにスクロールバーを配置したいのです。
しかし、片方の画面の設定をcreatePanel1()の中でやっているので、
何処でスクロールバーを追加する設定を行えば良いのかがわからないです。

createPanel1()にコードを追加するとNPEが発生し、
JSplitPaneを設定している場所でコードを追加すると、
他の設定が全て取り消されてしまうのです。

コード:
icon = new ImageIcon(image);
label = new JLabel(icon);
pa.add(label);
sp = new JScrollPane(pa);
getContentPane().add(sp);

山本 裕介
ぬし
会議室デビュー日: 2003/05/22
投稿数: 2415
お住まい・勤務地: 恵比寿
投稿日時: 2006-01-27 05:02
「JSplitPaneを使って、画像を使わずにスクロールバーを表示する」のはできるのでしょうか?
ごめんなさい、コードは見ていないのですがまずは JSplitPane を使うことでスクロールバーが表示されないのと ImageIcon のコンストラクタで NPE が発生するのは独立の問題ではないかと思うんです。
NPEが発生した副作用でスクロールバーが表示できない、ということはあるかもしれませんが。

スキルアップ/キャリアアップ(JOB@IT)