我已經完成了一名學生的工作,我的任務是爲它編寫一個自動文本編輯接近完成的任務。我必須將3或4個jTextAreas
添加到gui中。問題在於他如何編寫代碼,我只能添加一個jTextArea
。在沒有Gui編輯器的情況下向Gui添加3個jTextArea
這是怎麼樣了,它看起來像1 Jtextarea
:
而且這是我希望它有它:
這裏是疥癬的代碼鍵盤布孔佈局:
button = new CustomJButton[button_size];
jPanel1 = new javax.swing.JPanel();
jPanel2 = new javax.swing.JPanel();
jTextArea = new javax.swing.JTextArea();
// BorderLayout
bl = new java.awt.BorderLayout();
this.setLayout(bl);
this.add(jTextArea, BorderLayout.NORTH);
Font font1 = new Font("SansSerif", Font.BOLD, 20);
jTextArea.setFont(font1);
jTextArea.setFocusable(false);
menuButtongbc = new GridBagConstraints();
// vergrößert die Buttons in BEIDE Richtungen // HORIZONTAL/VERTICAL
menuButtongbc.fill = GridBagConstraints.BOTH;
menuButtongbc.insets = new Insets(1,1,1,1);
menuButtongbc.weightx = 1;
menuButtongbc.weighty = 1;
letterButtongbc = new GridBagConstraints();
// vergrößert die Buttons in BEIDE Richtungen // HORIZONTAL/VERTICAL
letterButtongbc.fill = GridBagConstraints.BOTH;
letterButtongbc.insets = new Insets(1,1,1,1);
letterButtongbc.weightx = 1;
letterButtongbc.weighty = 1;
jPanel1.setLayout(new java.awt.GridBagLayout()); // Layout left side
jPanel2.setLayout(new java.awt.GridBagLayout()); // Layout right side
//******************************************************************************
// Button left Block/Buttonborder/Resize ButtonImage
//******************************************************************************
int xVar = 0; // Hilfvariable für X und Y Zuordnung
int yVar = 0; // Hilfvariable für X und Y Zuordnung
for (int menuButtonArray = 0 ; menuButtonArray < 4 ; menuButtonArray++){
CustomJButton a = new CustomJButton(); // a : Hilfsvariable
button[menuButtonArray] = a;
button[menuButtonArray].setFont(new Font("Arial", Font.PLAIN, 40));
button[menuButtonArray].setBackground(backgroundColor);
button[menuButtonArray].setOpaque(true); // Test für MAC
button[menuButtonArray].setMinimumSize(new java.awt.Dimension(75, 75));
button[menuButtonArray].setPreferredSize(new java.awt.Dimension(100, 100));
button[menuButtonArray].setFocusable(false);
button[menuButtonArray].setBorder(BorderFactory.createLineBorder(Color.black, 4));
menuButtongbc.gridx = xVar; // X und Y Zuweisung der Button im GridbagLayout
menuButtongbc.gridy = yVar; // X und Y Zuweisung der Button im GridbagLayout
xVar++;
if(xVar == 2){ yVar++ ; xVar = 0; }
jPanel1.add(button[menuButtonArray] , menuButtongbc);
}
add(jPanel1, java.awt.BorderLayout.LINE_START); //getContentPane().
//******************************************************************************
// Array // Right side
//******************************************************************************
xVar = 0;
yVar = 0;
// ausgabe.length
for (int letterButtonArray = 4 ; letterButtonArray < 34 ; letterButtonArray++){
CustomJButton a = new CustomJButton(); // a : Hilfsvariable
button[letterButtonArray] = a;
button[letterButtonArray].setFont(new Font("Arial", Font.PLAIN, Integer.parseInt(read[9])));
button[letterButtonArray].setBackground(backgroundColor);
button[letterButtonArray].setOpaque(true); // Test für MAC
button[letterButtonArray].setMinimumSize(new java.awt.Dimension(20, 20));
button[letterButtonArray].setPreferredSize(new java.awt.Dimension(100, 100));
button[letterButtonArray].setBorder(new javax.swing.border.
SoftBevelBorder(javax.swing.border.BevelBorder.RAISED));
button[letterButtonArray].setFocusable(false);
// X und Y Zuweisung der Button im GridbagLayout
letterButtongbc.gridx = xVar;
letterButtongbc.gridy = yVar;
xVar++;
if(xVar > 14){ yVar++ ; xVar = 0; } // 17/für Buttons in einem jPanel
jPanel2.add(button[letterButtonArray] , letterButtongbc); // jPanel2
}
add(jPanel2 , java.awt.BorderLayout.CENTER); // getContentPane().
pack();
// Berechnung der Position über der Taskleiste
Dimension frameSize = this.getSize();
// BildschirmBreite - FensterBreite/2
setLocation((int)(screenSizeWidth - frameSize.width)/2 ,
// BildschirmHöhe - FensterHöhe - TaskbarHöhe
screenSizeHeight - frameSize.height - taskbarSize);
爲什麼不使用GUI editor.Tools,目的是使程序員的任務很容易,爲什麼在90年代的代碼時,你可以快速的代碼並節省時間。 –
您可以創建一個jpanel,將textarea添加到它,然後將此面板添加到北面,而不是將您的textarea添加到北面。 – Berger
因爲學生拜託我沒有gui編輯器寫它,因爲我知道你不能啓用後編輯器? – QFireball