:のJava:コンポーネント私はこのようなパネルにコンポーネントを配置しようとしています位置
が、私のコードでは、それは次のようになります。
私が持っていますFlowLayout
なしで試してみましたが、問題は同じです。私はウィンドウのサイズを最大にすると、行に表示されますが、ウィンドウのサイズを変更しようとすると、コンポーネントが境界線から外れてしまいます。
この問題を解決するのに手伝ってください。ここに私のコードは次のとおりです。
CNameLabel=new JLabel("Customer Name");
CNameTextField = new JTextField (20); // create the Customer Name text field
CNameTextField.setEditable(true); // set editable text box
CIDLabel=new JLabel("Customer ID");
C_IDTextField = new JTextField (10);
C_IDTextField.setEditable(true); // set editable text box
// Creating and populating the Top Panel
以下のコードは、パネルを作成するパネルの境界線を設定し、コンポーネントのためのFlowLayoutのを設定するためのものである:
topPanel=new JPanel();
topPanel.setLayout(new FlowLayout());
topPanel.setBorder(new TitledBorder(new EtchedBorder(), "Customer Data"));
topPanel.add(CNameLabel); topPanel.add(CNameTextField); topPanel.add(CIDLabel);
topPanel.add(C_IDTextField);
roomTypeLabel=new JLabel ("Room Type ");
//Create and populate Room type combo box
roomTypeCombo = new JComboBox();
roomTypeCombo.addItem("Budget($50)");
roomTypeCombo.addItem("Standard($75)");
roomTypeCombo.addItem("Executive($200)");
roomTypeCombo.addItem("Luxury($400)");
mealLabel=new JLabel ("Meal ");
//Create and populate Meal type combo box
mealCombo = new JComboBox();
mealCombo.addItem("None");
mealCombo.addItem("Breakfast Only($10)");
mealCombo.addItem("Any Two($30)");
mealCombo.addItem("All Three($50)");
daysLabel=new JLabel ("Days");
//Create and populate Days combo box
daysCombo = new JComboBox();
for(int i=0;i<31 ; i++)
{
daysCombo.addItem(i); // populate combobox with days
}
//Adding components to top panel
topPanel.add(roomTypeLabel);
topPanel.add(roomTypeCombo);
topPanel.add(mealLabel);
topPanel.add(mealCombo);
topPanel.add(daysLabel);
topPanel.add(daysCombo);
私はちょうどパッケージをスキップしてきたし、コンポーネントの宣言。プログラムは細かい状態で実行されています
ありがとうございます。
Java命名規則を学び、それらに固執してください。 – kleopatra