我創建了兩個選項的組合框:在JPanel中隱藏和顯示。我想知道如何編寫動作偵聽器,因此當從下拉列表中選擇「顯示」時,組合框旁邊會出現一張圖片,並在選擇「隱藏」時將其隱藏。提前謝謝了。 以下是我到目前爲止所做的。Combbox動作偵聽器顯示和隱藏圖像
myPanel = new javax.swing.JPanel();
myLabel = new javax.swing.JLabel();
myComboBox = new javax.swing.JComboBox();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
myLabel.setText("myLabel:");
myComboBox.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Hide", "Show" }));
javax.swing.GroupLayout myPanelLayout = new javax.swing.GroupLayout(myPanel);
myPanel.setLayout(myPanelLayout);
myPanelLayout.setHorizontalGroup(
myPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(myPanelLayout.createSequentialGroup()
.addGap(28, 28, 28)
.addComponent(myLabel)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(myComboBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(237, 237, 237))
);
myPanelLayout.setVerticalGroup(
myPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(myPanelLayout.createSequentialGroup()
.addGap(44, 44, 44)
.addGroup(myPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(myLabel)
.addComponent(myComboBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addContainerGap(36, Short.MAX_VALUE))
);
我給了你一個鏈接到教程的原因。閱讀教程並按照給出的示例代碼。是的,它可以做更多的工作,因爲你不能複製勺子餵食的代碼,但是你學得更多,甚至不需要創建任何自定義類來繪製圖像。 – camickr
是我做到了這一點是專業的方式來做到這一點,他選擇了我的答案,因爲我花時間給他寫了很好的乾淨的代碼,很容易閱讀。 – gsfd