Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何从GUI的Enter按钮中获取更多代码?_Java_Swing_User Interface - Fatal编程技术网

Java 如何从GUI的Enter按钮中获取更多代码?

Java 如何从GUI的Enter按钮中获取更多代码?,java,swing,user-interface,Java,Swing,User Interface,目前,我在Enter按钮操作中从GUI收集所有变量。有没有一种方法可以让我把所有这些从我的enter按钮中释放出来,进入另一个类来清理它的外观 private void enterActionPerformed(java.awt.event.ActionEvent evt) { // saves all entered data to its variable DateTimeFormatter dtf

目前,我在Enter按钮操作中从GUI收集所有变量。有没有一种方法可以让我把所有这些从我的enter按钮中释放出来,进入另一个类来清理它的外观

private void enterActionPerformed(java.awt.event.ActionEvent evt) {                                      
    // saves all entered data to its variable
    DateTimeFormatter dtf = DateTimeFormatter.ofPattern("MM/dd/yyyy",Locale.ENGLISH);
    LocalDate today = LocalDate.now();

    String dobDay1 = String.valueOf(dobDay.getSelectedItem());
    String dobMonth1 = String.valueOf(dobMonth.getSelectedItem());
    String dobYear1 = String.valueOf(dobYear.getSelectedItem());
    String SdobDay1 = String.valueOf(SdobDay.getSelectedItem());
    String SdobMonth1 = String.valueOf(SdobMonth.getSelectedItem());
    String SdobYear1 = String.valueOf(SdobYear.getSelectedItem());
    String children1 = String.valueOf(children.getSelectedItem());
    String annDay1 = String.valueOf(annDay.getSelectedItem());
    String annMonth1 = String.valueOf(annMonth.getSelectedItem());
    String annYear1 = String.valueOf(annYear.getSelectedItem());
    String state1 = String.valueOf(state.getSelectedItem());
    String dState1 = String.valueOf(dState.getSelectedItem());
    String fName1 = fName.getText();
    String MI1 = MI.getText();
    String lName1 = lName.getText();
    String SfName1 = SfName.getText();
    String SMI1 = SMI.getText();
    String SlName1 = SlName.getText();
    String spouse = SdobMonth1 + "/" + SdobDay1 + "/" + SdobYear1;
    String city1 = city.getText();
    String pMessage0 = pMessage.getText();
    String you = dobMonth1 + "/" + dobDay1 + "/" + dobYear1;
    String ann = annMonth1 + "/" + annDay1 + "/" + annYear1;
    String selfGender = buttonGroup1.getSelection().getActionCommand();
    String spouseGender = buttonGroup2.getSelection().getActionCommand();
    String mType = buttonGroup3.getSelection().getActionCommand();

    Period duration;
    //constructors for birthstones, zodiacs and gender pronouns from respective classes
    birthstone birthstonex = new birthstone(dobMonth1);
    birthstone1 birthstoney = new birthstone1(SdobMonth1);
    zodiac zodiacx = new zodiac(dobMonth1,dobDay1);
    zodiac2 zodiacy = new zodiac2(SdobMonth1, SdobDay1);
    gender gender1 = new gender(selfGender);
    gender2 gender2 = new gender2(spouseGender);
    messageType message = new messageType(mType);
    //String m = String.valueOf(message);
    LocalDate dob = LocalDate.parse(you,dtf);
    LocalDate sdob = LocalDate.parse(spouse,dtf);
    if (dob.compareTo(sdob) > 0) {
        duration = Period.between(sdob, dob);
    }  else {
        duration = Period.between(dob, sdob);
    }

    LocalDate annDate = LocalDate.parse(ann,dtf);
    Period married = Period.between(annDate, today);

    String marriage = String.format("%d year(s), %d month(s), %d day(s) " , married.getYears(), married.getMonths(), married.getDays());
    String difference = String.format("%d year(s), %d month(s), %d day(s) " ,duration.getYears(), duration.getMonths(), duration.getDays());


    output.setText(String.valueOf(messageType.message)+pMessage0);
这确实可以很好地工作,但它似乎在enter按钮中有很多代码,并且希望使它更干净。我对编程还是相当陌生,这一切都是从一个严肃的暴力类型的程序开始的,从那以后我一直在清理它。
我希望这里有足够的信息来获得帮助。

好吧,据我所知,该方法实际做的唯一一件事就是生成一个out消息,该消息为
String.valueOf(messageType.message)+pMessage0
。消息类型来自
buttonGroup3.getSelection().getActionCommand()
pMessage0
来自
pMessage.getText()
,其他一切似乎都是鼻子在做anything@MadProgrammer“其他一切都只是鼻子”除非你的意思是“鼻子上”它是“噪音”。。我也不完全确定。“这两种说法都是可信的。”安德烈·霍姆普森说nose@MadProgrammer顺便说一句,这些表情符号是来自Unicode字符吗?让我试试:-在@AndrewThompson上