![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
javaで「Push!」というボタンを作ったのですが
そのレイアウトの位置が下に来てくれません。
実際のソースは
package swing_1;//パッケージの名前だけで良い
import javax.swing.*;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.BorderLayout;
import java.awt.event.*;
import javax.swing.JLabel;
import java.awt.FlowLayout;
import java.awt.Container;
public class Sample19 extends JFrame implements ActionListener{
JComboBox startCombo;
JComboBox endCombo;
JLabel label;
public static void main(String[] args){
Sample19 frame = new Sample19();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setBounds(10, 10, 300, 200);
frame.setTitle("タイトル");
frame.setVisible(true);
}
Sample19(){
label = new JLabel("");
label.setHorizontalAlignment(JLabel.CENTER);
JFrame f = new JFrame("自由に配置する");
JButton btn = new JButton("Push!");
btn.addActionListener(this);
Container cont = f.getContentPane();
cont.add(btn);
btn.setBounds(0,0,50,20);
JPanel p = new JPanel();
p.add(btn);
getContentPane().add(p,BorderLayout.CENTER);
getContentPane().add(label,BorderLayout.PAGE_END);
String[] startTime = {"08:00","09:00","10:00","11:00",
"12:00","13:00","14:00","15:00",
"16:00","17:00","18:00","19:00"};
String[] endTime = {"08:00","09:00","10:00","11:00",
"12:00","13:00","14:00","15:00",
"16:00","17:00","18:00","19:00"};
startCombo = new JComboBox(startTime);
startCombo.setPreferredSize(new Dimension(80, 30));
startCombo.addActionListener(this);
endCombo = new JComboBox(endTime);
endCombo.setPreferredSize(new Dimension(80, 30));
endCombo.addActionListener(this);
/* JPanel p = new JPanel();*/
p.add(new JLabel("start:"));
p.add(startCombo);
p.add(new JLabel(" end:"));
p.add(endCombo);
label = new JLabel();
JPanel labelPanel = new JPanel();
labelPanel.add(label);
getContentPane().add(p, BorderLayout.CENTER);
getContentPane().add(labelPanel, BorderLayout.PAGE_END);
}
public void actionPerformed(ActionEvent e) {
int modifiers = e.getModifiers();
StringBuffer sb = new StringBuffer();//ストリングバッファー=文字の格納?
sb.append("ボタンクリック ");
if((modifiers & ActionEvent.ALT_MASK) == ActionEvent.ALT_MASK){//バッファーがないと影響する
sb.append("ALT ");
}
if((modifiers & ActionEvent.SHIFT_MASK) == ActionEvent.SHIFT_MASK){
sb.append("SHIFT ");
}
label.setText(new String(sb));
String start;
String end;
if (startCombo.getSelectedIndex() == -1){
start = "(not select)";
}else{
start = (String)startCombo.getSelectedItem();
}
if (endCombo.getSelectedIndex() == -1){
end = "(not select)";
}else{
end = (String)endCombo.getSelectedItem();
}
label.setText("START:" + start + ", END:" + end);
}
}
までがソースでコンパイルエラーはなし
環境はjava eclipse swing macです。
JFrameで枠を作成しcontentsPane()で「Push!」ボタンを一番下に持って来たいのですが
誰かプログラム読める方いらっしゃったらお願いします。
No.1ベストアンサー
- 回答日時:
誰も答えないようなので、ちょっとだけ。
ソースを見る限りボタンは左上に出そうですが、ソースを改造してほしいという
話なんですかね? どんなアドバイスをほしいのかはっきり書かずに作業丸投げでは
答えは返ってこないでしょう。
蛇足ですが、私はSwing を使うのはやめて、Oracle推奨の JavaFXに
ずいぶん前に切り替えてしまいました。XML+GUIツールでVisual Basicみたいに簡単に
画面にペタペタボタン張り付けて、イベントハンドラ書いてGUIがデザインできるので、
いまさらコードオンリーでGUIを作る Swingに戻る気はないです。
今時 Swing を入門するのは珍しいなとは思いました。
#Swing派から石投げられそうですが・・・
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
AWTのアプレットにおいてのイベ...
-
ListSelectionListenerのvalueC...
-
JButton-背景の透明化
-
VB6.0でのTextboxの高さ変更
-
EXECLの行を削除
-
JPanelの切り替えと再描画
-
java junit list同士の比較方法
-
javaで方向キー・特殊キーなど...
-
ボタンクリック後パネルを再描...
-
【C#】ハッシュテーブル(連想...
-
オブジェクトの中のプロパティ...
-
IF関数でEmpty値を設定する方法。
-
javaで質問です。 文字列2023/2...
-
カタカナの小文字を大文字に変...
-
分を表す数値(int型)を、小数...
-
ページング
-
ループ処理の際、最後だけ","を...
-
ArrayListの要素数の上限
-
配列にnullを代入すると、null...
-
java spring でエラーが出て困...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
java junit list同士の比較方法
-
KeyListenerの使い方について
-
javaで文字数制限するには?
-
JPanelの重ね方/OverlayLayout他
-
【Swing】JPanel クラス外から...
-
4択クイズでのランダム出題の...
-
JPanelの切り替えと再描画
-
TextAreaでの文字の色
-
setPrefferedSizeとsetSize
-
TABキーの検出
-
Buttonを押すと画像が表示され...
-
JTableの列ヘッダ
-
あるコンボボックスを選択する...
-
最後の行に移動するには?
-
VB6.0でのTextboxの高さ変更
-
JavaのswingでCardLayoutの画面...
-
Enterキーでボタンを押すにはど...
-
JavaでのSwingを使った簡易電卓...
-
ウィンドウなしで画像表示
-
c言語のプログラミングで1から1...
おすすめ情報