0
我有一個MainWindow類,它有main方法,它的構造函數和initialize()方法。 initialize()方法有框架,Jbutton和最終的Jtextarea。 actionPerformed()在處理ActionListener的另一個類Data中。我想在Jtextfield中按下按鈕之後顯示一些文本,該文本僅位於MainWindow類的專用變量框架內。我沒有提到應用程序邏輯,幫助我與它交互,並且GUI。謝謝!!!! !WindowBuilder交互java的GUI和應用程序邏輯?
MainWindow類:
public class MainWindow {
private JFrame frame;
public Data data;
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
MainWindow window = new MainWindow();
window.frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
public MainWindow() {
this.data = new Data();
initialize();
}
private void initialize(){
frame = new JFrame();
frame.setBounds(100, 100, 396, 469);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().setLayout(null);
final JTextArea textarea = new JTextArea();
textarea.setFont(new Font("Dialog", Font.PLAIN, 75));
textarea.setTabSize(15);
textarea.setBounds(12, 28, 370, 85);
frame.getContentPane().add(textarea);
JButton button7 = new JButton("7");
button7.addActionListener(this.data); // Data data class has the actionperformed() method
button7.setActionCommand("7");
button7.setBounds(12, 125, 65, 73);
frame.getContentPane().add(button7);
}
}
那麼類數據是:
public class Data implements ActionListener {
public String s;
public Data(){
//constructor
}
public void actionPerformed(ActionEvent e) {
// this will set string s with some string
// that has to be returned to be displayed
// in the Jtextarea of the frame in MainWindow
}
public string returnString(){
return s;
}
我只是想設置主窗口框架變量的JTextArea class..please幫助
我能夠在我的數據類中設置字符串,但實際的問題是在MainWindow類的JTextArea textarea中返回字符串並將其設置。請幫助我返回JTextArea並添加到MainWindow類中的JFrame框架......謝謝! – 2014-12-04 14:01:43
讓我們來思考。從邏輯上講,ActionListener會捕獲你的動作並在actionPerformed中運行一個代碼,因此如果你想在MainWindow中處理代碼,那麼你必須在MainWindow中創建一個方法並從ActionListener **中調用它。 – larensolarsuss 2014-12-05 10:07:56