这就是我正在做的事情 查看 StudentIDPrint 的 JLabel 将它们打印出来,还有带有文本字段的字符串的 StudentIDSS 是 StudentIDSS 应该从中获得其价值的地方我真的很喜欢任何提示和帮助,非常感谢我认为这可能是放置代码的地方,但我真的迷失在这里,任何帮助都会很可爱,非常感谢大家
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
//Allows it too use JFrame
public class LiftingApp extends JFrame {
//Calls them from import (like calling a Scanner)
private JLabel EnterSID;
private JButton button;
private JTextField textfield;
private ImageIcon image;
private JLabel WaukeeAPEX;
private ImageIcon ThankIMG;
private JLabel Thank;
private JButton AdminButton;
private JTextField AdminText;
private JButton AdminButton2;
private JLabel AdminThank;
private JButton goback;
private ImageIcon Login;
private ImageIcon AdminLogin;
private ImageIcon RTMS;
private JLabel StudentIDPrint;
public String StudentIDSS;
public LiftingApp()
{
getContentPane().setBackground(Color.GRAY);
setIconImage(Toolkit.getDefaultToolkit().getImage(LiftingApp.class.getResource("ICON.jpg")));
getContentPane().setLayout(new FlowLayout());
goback = new JButton("Return To Main Screen");
getContentPane().add(goback);
goback.setVisible(false);
event4 rb = new event4();
goback.addActionListener(rb);
AdminThank = new JLabel("Thank You For Loging in");
AdminThank.setForeground(Color.WHITE);
getContentPane().add(AdminThank);
AdminThank.setVisible(false);
AdminButton2 = new JButton("Admin Login");
getContentPane().add(AdminButton2);
AdminButton2.setVisible(false);
event3 al2 = new event3();
AdminButton2.addActionListener(al2);
AdminButton = new JButton("Admin Login");
getContentPane().add(AdminButton);
AdminText = new JTextField(10);
getContentPane().add(AdminText);
AdminText.setVisible(false);
event2 al = new event2();
AdminButton.addActionListener(al);
//Adds a Button
button = new JButton("Login");
getContentPane().add(button);
//Adds Text
EnterSID = new JLabel("Enter StudentID");
EnterSID.setForeground(Color.WHITE);
getContentPane().add(EnterSID);
event e = new event();
button.addActionListener(e);
//Adds Field (The box you type stuff in)
textfield = new JTextField(10);
getContentPane().add(textfield);
textfield.getText();
//Adds Image
image = new ImageIcon(getClass() .getResource("testt.png"));
//Sets Image to the WaukeeAPEX JLabel
WaukeeAPEX = new JLabel(image);
getContentPane().add(WaukeeAPEX);
ThankIMG = new ImageIcon(getClass() .getResource("testt2.png"));
Thank = new JLabel(ThankIMG);
getContentPane().add(Thank);
Thank.setVisible(false);
StudentIDPrint = new JLabel();
getContentPane().add(StudentIDPrint);
StudentIDPrint.setVisible(false);
StudentIDPrint.setText("Student IDS Are:" + StudentIDSS);
}
public static void main(String[] args)
{
//This is just talking about the window
LiftingApp gui = new LiftingApp();
//When you click the X it closes...
gui.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//Size of intial box (pack puts every thing you have to the smallest size to keep everything)
gui.setSize(1000, 1000);
//This makes it so you can see the Window
gui.setVisible(true);
//This Sets The Title
gui.setTitle("Elmin Strength");
//Dont Worry About any of this just learning Arrays
//Array Initializer
}
//ActionListener Just waits for the action to happen then dose what is told
public class event implements ActionListener {
//Telling what the Action is
public void actionPerformed(ActionEvent e) {
StudentIDSS = textfield.getText();
//This will show after the button is pressed
EnterSID.setVisible(false);
textfield.setVisible(true);
Thank.setVisible(true);
AdminText.setVisible(false);
AdminButton.setVisible(false);
button.setVisible(false);
WaukeeAPEX.setVisible(false);
textfield.setVisible(false);
goback.setVisible(true);
}
}
public class event2 implements ActionListener{
public void actionPerformed(ActionEvent al){
textfield.setVisible(false);
EnterSID.setVisible(false);
button.setVisible(false);
AdminText.setVisible(true);
AdminButton.setVisible(false);
AdminButton2.setVisible(true);
goback.setVisible(true);
}
}
public class event3 implements ActionListener{
public void actionPerformed(ActionEvent al2){
String p = AdminText.getText();
AdminButton2.setVisible(false);
textfield.setVisible(false);
AdminText.setVisible(true);
AdminText.getSelectedText();
WaukeeAPEX.setVisible(false);
if(p.compareTo("Password") == 0) {
Thank.setVisible(true);
goback.setVisible(true);
AdminThank.setVisible(true);
StudentIDPrint.setVisible(true);
}else{
goback.setVisible(true);
AdminText.setVisible(false);
}
}
}
public class event4 implements ActionListener{
public void actionPerformed(ActionEvent rb) {
goback.setVisible(false);
button.setVisible(true);
EnterSID.setVisible(true);
textfield.setVisible(true);
AdminButton.setVisible(true);
WaukeeAPEX.setVisible(true);
Thank.setVisible(false);
AdminButton2.setVisible(false);
AdminThank.setVisible(false);
AdminText.setVisible(false);
}
}
}
你在玩什么LiftingApp。为了方便起见,我重新排列了您的一些代码。
public LiftingApp() {
// skip...
getContentPane().setLayout(new FlowLayout());
getContentPane().add(goback);
getContentPane().add(AdminThank);
getContentPane().add(AdminButton2);
getContentPane().add(AdminButton);
getContentPane().add(AdminText);
getContentPane().add(button);
getContentPane().add(EnterSID);
getContentPane().add(textfield);
getContentPane().add(WaukeeAPEX);
getContentPane().add(Thank);
getContentPane().add(StudentIDPrint);
event4 rb = new event4();
event3 al2 = new event3();
event2 al = new event2();
event e = new event();
goback.addActionListener(rb);
AdminButton2.addActionListener(al2);
AdminButton.addActionListener(al);
button.addActionListener(e);
goback.setVisible(false);
AdminThank.setVisible(false);
AdminButton2.setVisible(false);
AdminText.setVisible(false);
Thank.setVisible(false);
StudentIDPrint.setVisible(false);
}
现在,您有一个 FlowLayout 作为类的布局,其中包含 4 个按钮和 4 个操作侦听器。
对于这些操作,您只有一个侦听器就足够了。
我只是将每个侦听器的代码作为 MainEvent 类放到一个侦听器上。如您所知,有几种方法可以使用操作侦听器。这可能是一种方法。
class MainButtonEvt implements ActionListener
{
@Override
public void actionPerformed(ActionEvent evt) {
System.out.println("====> ");
if(evt.getSource() == (JButton) button)
{
System.out.println("====> login");
StudentIDSS = textfield.getText();
StudentIDPrint.setText("Student IDS Are:" + StudentIDSS);
if(!StudentIDPrint.isVisible()) StudentIDPrint.setVisible(true);
// This will show after the button is pressed
if(EnterSID.isVisible()) EnterSID.setVisible(false);
if(!textfield.isVisible()) textfield.setVisible(true);
if(!Thank.isVisible()) Thank.setVisible(true);
if(AdminText.isVisible()) AdminText.setVisible(false);
if(AdminButton.isVisible()) AdminButton.setVisible(false);
if(button.isVisible()) button.setVisible(false);
if(WaukeeAPEX.isVisible()) WaukeeAPEX.setVisible(false);
if(AdminThank.isVisible()) AdminThank.setVisible(false);
if(!goback.isVisible()) goback.setVisible(true);
}
if(evt.getSource() == (JButton) goback)
{
System.out.println("====> goback");
String p = textfield.getText();
if(p != null && !p.equals("")) textfield.setText("");
if(goback.isVisible()) goback.setVisible(false);
if(!button.isVisible()) button.setVisible(true);
if(!EnterSID.isVisible()) EnterSID.setVisible(true);
if(textfield.isVisible()) textfield.setVisible(false);
if(!AdminButton.isVisible()) AdminButton.setVisible(true);
if(!WaukeeAPEX.isVisible()) WaukeeAPEX.setVisible(true);
if(Thank.isVisible()) Thank.setVisible(false);
if(AdminButton2.isVisible()) AdminButton2.setVisible(false);
if(AdminThank.isVisible()) AdminThank.setVisible(false);
if(!AdminText.isVisible()) AdminText.setVisible(true);
}
if(evt.getSource() == (JButton) AdminButton)
{
System.out.println("====> AdminButton");
if(AdminButton2.isVisible()) AdminButton2.setVisible(false);
if(textfield.isVisible()) textfield.setVisible(false);
if(!AdminText.isVisible()) AdminText.setVisible(true);
String p = AdminText.getText();
//p = AdminText.getSelectedText();
if(WaukeeAPEX.isVisible()) WaukeeAPEX.setVisible(false);
if (p.compareTo("Password") == 0) {
if(!Thank.isVisible()) Thank.setVisible(true);
if(!goback.isVisible()) goback.setVisible(true);
if(!AdminThank.isVisible()) AdminThank.setVisible(true);
if(!StudentIDPrint.isVisible())
StudentIDPrint.setVisible(true);
} else {
if(!goback.isVisible()) goback.setVisible(true);
if(AdminText.isVisible()) AdminText.setVisible(false);
}
}
}
}
然后,您可以按如下方式调用主事件类;
MainButtonEvt mainEvt = new MainButtonEvt();
goback.addActionListener(mainEvt);
AdminButton2.addActionListener(mainEvt);
AdminButton.addActionListener(mainEvt);
button.addActionListener(mainEvt);
我希望你能找到如何处理它。完整源代码:
package just.test.swing;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.io.File;
import java.net.MalformedURLException;
//Allows it too use JFrame
public class LiftingApp extends JFrame {
// Calls them from import (like calling a Scanner)
private JLabel EnterSID;
private JButton button;
private JTextField textfield;
private ImageIcon image;
private JLabel WaukeeAPEX;
private ImageIcon ThankIMG;
private JLabel Thank;
private JButton AdminButton;
private JTextField AdminText;
private JButton AdminButton2;
private JLabel AdminThank;
private JButton goback;
private ImageIcon Login;
private ImageIcon AdminLogin;
private ImageIcon RTMS;
private JLabel StudentIDPrint;
public String StudentIDSS;
public LiftingApp() {
getContentPane().setBackground(Color.GRAY);
File icon = new File("resource/images/hourglass.png");
File icon2 = new File("resource/images/plus.png");
File icon3 = new File("resource/images/minus.png");
// setIconImage(Toolkit.getDefaultToolkit().getImage(LiftingApp.class.getResource("ICON.jpg")));
try {
setIconImage(Toolkit.getDefaultToolkit().getImage(icon.toURI().toURL()));
} catch (MalformedURLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
goback = new JButton("Return To Main Screen");
AdminThank = new JLabel("Thank You For Loging in");
AdminThank.setForeground(Color.WHITE);
AdminButton2 = new JButton("Admin Login2");
AdminButton = new JButton("Admin Login");
AdminText = new JTextField(10);
// Adds a Button
button = new JButton("Login");
// Adds Text
EnterSID = new JLabel("Enter StudentID");
EnterSID.setForeground(Color.WHITE);
// Adds Field (The box you type stuff in)
textfield = new JTextField(10);
//textfield.getText();
// Adds Image
// image = new ImageIcon(getClass().getResource("testt.png"));
try {
image = new ImageIcon(icon2.toURI().toURL());
} catch (MalformedURLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
// Sets Image to the WaukeeAPEX JLabel
WaukeeAPEX = new JLabel(image);
// ThankIMG = new ImageIcon(getClass() .getResource("testt2.png"));
try {
ThankIMG = new ImageIcon(icon3.toURI().toURL());
} catch (MalformedURLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
Thank = new JLabel(ThankIMG);
StudentIDPrint = new JLabel();
StudentIDSS = "";
StudentIDPrint.setText("Student IDS Are:" + StudentIDSS);
getContentPane().setLayout(new FlowLayout());
getContentPane().add(goback);
getContentPane().add(AdminThank);
getContentPane().add(AdminButton2);
getContentPane().add(AdminButton);
getContentPane().add(AdminText);
getContentPane().add(button);
getContentPane().add(EnterSID);
getContentPane().add(textfield);
getContentPane().add(WaukeeAPEX);
getContentPane().add(Thank);
getContentPane().add(StudentIDPrint);
MainButtonEvt mainEvt = new MainButtonEvt();
goback.addActionListener(mainEvt);
AdminButton2.addActionListener(mainEvt);
AdminButton.addActionListener(mainEvt);
button.addActionListener(mainEvt);
//event4 rb = new event4();
//event3 al2 = new event3();
//event2 al = new event2();
//event e = new event();
//goback.addActionListener(rb);
//AdminButton2.addActionListener(al2);
//AdminButton.addActionListener(al);
//button.addActionListener(e);
goback.setVisible(false);
AdminThank.setVisible(false);
AdminButton2.setVisible(false);
AdminText.setVisible(false);
Thank.setVisible(false);
StudentIDPrint.setVisible(false);
}
public static void main(String[] args) {
// This is just talking about the window
LiftingApp gui = new LiftingApp();
// When you click the X it closes...
gui.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// Size of intial box (pack puts every thing you have to the smallest
// size to keep everything)
gui.setSize(1200, 900);
// This makes it so you can see the Window
gui.setVisible(true);
// This Sets The Title
gui.setTitle("Elmin Strength");
// Dont Worry About any of this just learning Arrays
// Array Initializer
}
class MainButtonEvt implements ActionListener
{
@Override
public void actionPerformed(ActionEvent evt) {
System.out.println("====> ");
if(evt.getSource() == (JButton) button)
{
System.out.println("====> login");
StudentIDSS = textfield.getText();
StudentIDPrint.setText("Student IDS Are:" + StudentIDSS);
if(!StudentIDPrint.isVisible()) StudentIDPrint.setVisible(true);
// This will show after the button is pressed
if(EnterSID.isVisible()) EnterSID.setVisible(false);
if(!textfield.isVisible()) textfield.setVisible(true);
if(!Thank.isVisible()) Thank.setVisible(true);
if(AdminText.isVisible()) AdminText.setVisible(false);
if(AdminButton.isVisible()) AdminButton.setVisible(false);
if(button.isVisible()) button.setVisible(false);
if(WaukeeAPEX.isVisible()) WaukeeAPEX.setVisible(false);
if(AdminThank.isVisible()) AdminThank.setVisible(false);
if(!goback.isVisible()) goback.setVisible(true);
}
if(evt.getSource() == (JButton) goback)
{
System.out.println("====> goback");
String p = textfield.getText();
if(p != null && !p.equals("")) textfield.setText("");
if(goback.isVisible()) goback.setVisible(false);
if(!button.isVisible()) button.setVisible(true);
if(!EnterSID.isVisible()) EnterSID.setVisible(true);
if(textfield.isVisible()) textfield.setVisible(false);
if(!AdminButton.isVisible()) AdminButton.setVisible(true);
if(!WaukeeAPEX.isVisible()) WaukeeAPEX.setVisible(true);
if(Thank.isVisible()) Thank.setVisible(false);
if(AdminButton2.isVisible()) AdminButton2.setVisible(false);
if(AdminThank.isVisible()) AdminThank.setVisible(false);
if(!AdminText.isVisible()) AdminText.setVisible(true);
}
if(evt.getSource() == (JButton) AdminButton)
{
System.out.println("====> AdminButton");
if(AdminButton2.isVisible()) AdminButton2.setVisible(false);
if(textfield.isVisible()) textfield.setVisible(false);
if(!AdminText.isVisible()) AdminText.setVisible(true);
String p = AdminText.getText();
//p = AdminText.getSelectedText();
if(WaukeeAPEX.isVisible()) WaukeeAPEX.setVisible(false);
if (p.compareTo("Password") == 0) {
if(!Thank.isVisible()) Thank.setVisible(true);
if(!goback.isVisible()) goback.setVisible(true);
if(!AdminThank.isVisible()) AdminThank.setVisible(true);
if(!StudentIDPrint.isVisible()) StudentIDPrint.setVisible(true);
} else {
if(!goback.isVisible()) goback.setVisible(true);
if(AdminText.isVisible()) AdminText.setVisible(false);
}
}
}
}
// ActionListener Just waits for the action to happen then dose what is told
public class event implements ActionListener {
// Telling what the Action is
public void actionPerformed(ActionEvent e) {
StudentIDSS = textfield.getText();
// This will show after the button is pressed
EnterSID.setVisible(false);
textfield.setVisible(true);
Thank.setVisible(true);
AdminText.setVisible(false);
AdminButton.setVisible(false);
button.setVisible(false);
WaukeeAPEX.setVisible(false);
textfield.setVisible(false);
goback.setVisible(true);
}
}
public class event2 implements ActionListener {
public void actionPerformed(ActionEvent al) {
textfield.setVisible(false);
EnterSID.setVisible(false);
button.setVisible(false);
AdminText.setVisible(true);
AdminButton.setVisible(false);
AdminButton2.setVisible(true);
goback.setVisible(true);
}
}
public class event3 implements ActionListener {
public void actionPerformed(ActionEvent al2) {
String p = AdminText.getText();
AdminButton2.setVisible(false);
textfield.setVisible(false);
AdminText.setVisible(true);
AdminText.getSelectedText();
WaukeeAPEX.setVisible(false);
if (p.compareTo("Password") == 0) {
Thank.setVisible(true);
goback.setVisible(true);
AdminThank.setVisible(true);
StudentIDPrint.setVisible(true);
} else {
goback.setVisible(true);
AdminText.setVisible(false);
}
}
}
public class event4 implements ActionListener {
public void actionPerformed(ActionEvent rb) {
goback.setVisible(false);
button.setVisible(true);
EnterSID.setVisible(true);
textfield.setVisible(true);
AdminButton.setVisible(true);
WaukeeAPEX.setVisible(true);
Thank.setVisible(false);
AdminButton2.setVisible(false);
AdminThank.setVisible(false);
AdminText.setVisible(false);
}
}
}
首先 抱歉发布我的整个代码,其次我所做的是制作一个从 JTextField 获取的 JLabel,然后我制作了一个从 JLabel 获取的字符串
StudentIDSSS = new JLabel(": " + textfield.getText() + ":");
getContentPane().add(StudentIDSSS);
StudentIDSSS.setVisible(true);
String List = StudentIDSSS.getText();
System.out.print(List);
StudentIDList = new JLabel(List);
getContentPane().add(StudentIDList);
StudentIDList.setVisible(false);