Google
 
Web itpro-blogger.blogspot.com
木曜日, 8月 24, 2006

[Java]Swing関連

▼質問
JScrollPaneのスクロールバー上下・左右にあるボタンのワンクリックの移動量を設定するには
どうしたらいいの?

▼回答
JScrollBarクラスのsetUnitIncrement()メソッドで1クリックの移動量(増加量)を設定できる。

下記のサンプルは、水平スクロールを常に表示し移動量を設定するプログラムである。

JScrollPane scrollPane = new JScrollPan
(javax.swing.ScrollPaneConstants.VERTICAL_SCROLLBAR_NEVER,
javax.swing.ScrollPaneConstants.HORIZONTAL_SCROLLBAR_ALWAYS);
JScrollBar scrollBar = new JScrollBar();
// scrollBar = scrollPane.getVerticalScrollBar()
// scrollBar.setUnitIncrement(n);
scrollBar = scrollPane.getHorizontalScrollBar();
scrollBar.setUnitIncrement(n);

▼質問
JScrollPaneを右にスクロールすると、レイアウトで区切った左側部分が隠れる。

▼回答
作成したJScrollPaneの部分をPanelに追加してやるとうまくいったが、左側が今度は隠れてしまった。
setOpaqueメソッドで制御すればできそうだが。。。

調べてみると、JScrollPaneとPanelの混在は駄目みたい。とほほ・・・。

JScrollPaneのときは、JPanelを継承したもの使い。Panelのときは、ScrollPaneの組み合わせしか
駄目みたい。。。。

とりあえずPanelをJPanelに修正したが、スクロールがうまく動かなく、表示領域以外のところが
見れなかった。

調べてみると、次のコードを入れてみるとよいことがわかったので試しに入れてみた。

Dimension size = new Dimension( x, y );
this.setMaximumSize( size );
this.setMinimumSize( size );
this.setPreferredSize( size );

すると、うまく動いてくれた。よかった。(*^^*)v

▼質問
JButtonで複数行の文字列を表示するにはどうすればいいの?

▼回答
テキストに¥nを入れても駄目なのね?(>_<)

テキストにHTML(Hyper Text Markup Language)形式で記述をするとできるのね!

javax.swing.JButton jbutton = new javax.swing.JButton(""<""HTML"">""

1行目
2行目

");


▼質問
ダイアログのFramとJDialogの関係?JFramとDialogの関係ってあるの?

▼回答
public class TestDialog extends Fram {
private MainDialog dialog = null;
// コンストラクタ
public TestDialog() {
Dimension dim = new Dimension( 100, 100 );
dialog = new DataDialog( MizuASetDataDialog.this, title, true );
Dimension ScreenSize = getToolkit().getScreenSize();
dialog.setBounds( (ScreenSize.width/2) - (dim.width/2), (ScreenSize.height/2) - (dim.height/2), dim.width, dim.height );
dialog.setResizable( false );
dialog.setSize( dim );

// ダイアログのクローズ処理
dialog.addWindowListener( new WindowAdapter() {
public void windowClosing( WindowEvent e ) {
dialog.dispose();
dialog = null;
return;
}
});

dialog.show();
}
private class MainDialog extends Dialog {
// コンストラクタ
public MainDialog( Fram owner, String title, boolean modal ) {
super( owner, title, modal );
}
}
}

▼質問
Javaにはスピンボックスはないの?

▼回答
あるよ!J2SE1.4からSwingコンポーネントのJSpinner(スピナー)が追加されたよ!!

■参考サイト
http://www.javainthebox.net/laboratory/JDK1.4/Swing/Spinner/Spinner.html

▼質問
ラジオボタンはどうやってコーディングするの?

▼回答
JRadioButtonとButtonGroupを使って作成するんだ。

JRadioButton radio1 = new JRadioButton("radio1", true);
JRadioButton radio2 = new JRadioButton("radio2");
JRadioButton radio3 = new JRadioButton("radio3");

ButtonGroup group = new ButtonGroup();
group.add(radio1);
group.add(radio2);
group.add(radio3);






Comments: コメントを投稿

<< Home

This page is powered by Blogger. Isn't yours?