私の問題はProvince.javaクラスのjTextField1(更新地域)を更新することです。 最初に表示されるGUIは、記入する4つのフィールド(jTextField):province(jTextField1)、district(2)、ward(3)を含むAddAddressです。 jTextField1または2または3または4をダブルクリックするたびに、新しいJFrameが表示され、州、地区、または区のリストが表示されます。クリックすると、最初のGUIに戻り、クリックした州/区/区が更新されます。別のスイングGUIクラスでjTextFieldを更新
答えて
このような状況ではJFrame
を使用しないでください。実際には1つのアプリケーションで複数のフレームを使用するのは悪い習慣です。ここをクリックしてください:The Use of Multiple JFrames: Good or Bad Practice?ここで
私はあなたが地域を選択するようにJDialog
を使用することをお勧めなど
は簡単な例です:
import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JTextField;
public class JDialogDemo extends JFrame {
public JDialogDemo() {
final MyDialog dialog = new MyDialog(this);
final JTextField provinceField = new JTextField(10);
JButton button = new JButton("Show Dialog");
button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
dialog.pack();
dialog.setLocationRelativeTo(JDialogDemo.this);
dialog.setVisible(true);
provinceField.setText(dialog.getSelectedProvince());
}
});
setLayout(new FlowLayout());
add(provinceField);
add(button);
setSize(400, 400);
setVisible(true);
}
public static void main(String[] args) {
new JDialogDemo();
}
}
class MyDialog extends JDialog {
private String selectedProvince;
public MyDialog(Frame owner) {
super(owner, true);
setTitle("Provinces");
final JList<String> list = new JList<String>(new String[]{"province1", "province2", "province3"});
add(list);
JButton okButton = new JButton("Ok");
okButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
selectedProvince = list.getSelectedValue();
setVisible(false);
}
});
add(okButton, BorderLayout.SOUTH);
}
public String getSelectedProvince() {
return selectedProvince;
}
}
編集:
編集しjTextField1MouseClicked
方法
private void jTextField1MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jTextField1MouseClicked
// TODO add your handling code here:
if(evt.getClickCount() == 2){
AddProvince provinceDialog = new AddProvince();
provinceDialog.setVisible(true);
jTextField1.setText(provinceDialog.getSelectedProvince());
}
}
次にAddProvince
をJDialog
から伸ばしてください。そして、選択された州を返すメソッドを追加します。
締め切りは2日後です。どのようにすればいいのか教えてもらえますか?( – ledinhhoangson
私のコード例を確認してください。 – rdonuk
それは働いたことがありました!百万回ありがとう!!! – ledinhhoangson
- 1. 別のスイングGUIでボタンをクリックした後に別のスイングGUIを開く
- 2. リモートosgiインスタンスを自動更新する(スイングGUI)
- 3. Scala - スイングでJFreeChartを更新
- 4. スイング - 複数のGUI
- 5. スイングで別のGUIウィンドウからイベントを処理する方法
- 6. Java - 表示スイングGUI
- 7. 別のクラスの別のスレッドからJavaFX GUIを変更する
- 8. Javaのスイング:接続4 GUI
- 9. GUI IOExceptionのスイングとFileNotFoundException
- 10. ボタンプレスでJTextFieldを更新する
- 11. スイングでテーブル更新イベントをキャンセルする
- 12. クラスからメインクラスへGUI(スイング)を呼び出す方法は?
- 13. スイングGUIでセレンをコントロールする
- 14. 高水準JavaスイングGUIフレームワーク
- 15. あるクラスから別のクラスのJTextfieldにJButtonアクションを渡す
- 16. GUIでの値の更新
- 17. 別のクラスからJTextFieldのテキストを設定できません
- 18. Javafx Guiの更新
- 19. GUIのラベルを別のクラスのスレッドから変更する
- 20. C#別のクラスからTextBoxを更新
- 21. JLabelとJTextFieldはスイング形式ではありません
- 22. スイング - JTextfield入力を使用してGridLayoutを作成する
- 23. スイング:パネルの再描画時にJTextFieldのフォーカスが失われる
- 24. Java Swing:Running GUI別のClassメソッドからのメソッドの更新
- 25. GUIのタイマークラス更新テキスト?
- 26. Java - 別のクラス変数とJTextField変数をリンクする
- 27. 別のクラスの別のスレッドからUIを更新する
- 28. スイングで `NullPointerException` AWTスレッド - JLightweightFrameでのカーソルの更新
- 29. PyQT GUIでラベルを更新するループ
- 30. JavaスイングでこのGUIリストを実装する方法
{ // TODOここにあなたの処理コードを追加 –
ます。private void jList1MouseClicked(java.awt.event.MouseEventのEVT)...いくつかのコードを示しています。 JListのtheList =(JListの)evt.getSourceを(); if(evt.getClickCount()== 2){ int index = theList.locationToIndex(evt.getPoint()); オブジェクトオブジェクト= theList.getModel()。getElementAt(index); } this.setVisible(false); 新しいAddAddress()。setVisible(true); } – ledinhhoangson
InクラスAddProvince。私はSQLデータベースからクラスを作成するためにjpaを使用します – ledinhhoangson