Im이 질문의 단어를 쓰는 방법은 확실하지 않습니다. 하지만 여기서 최선을 다할거야. 당신이 수 있다면 나와 함께 곰 :객체 값을 가진 객체 이름을 반환하는 중
나는 (지금 다루고있는) 3 테이블 데이터베이스가 있습니다. 다행히도 모두 같은 양의 컬럼을가집니다. "팝업"양식을 사용하여 값을 입력하려고합니다. .. 그것을 지금 ... 여기
내가 지금까지 그 방법에 대해 작성한 코드입니다public form(int option, String val1, String val2, String val3, String val4, String val5)
{
val1 = null;
val2 = null;
val3 = null;
val4 = null;
val5 = null;
JTextField val1Field = new JTextField(20);
JTextField val2Field = new JTextField(20);
JTextField val3Field = new JTextField(20);
JTextField val4Field = new JTextField(20);
JTextField val5Field = new JTextField(20);
String name;
String lbl1 = null;
String lbl2 = null;
String lbl3 = null;
String lbl4 = null;
String lbl5 = null;
switch(option)
{
case 1: //if customer
name = "Customer Information";
lbl1 = "Customer No:";
lbl2 = "Customer Name:";
lbl3 = "Company Name:";
lbl4 = "Contact Number: ";
lbl5 = "Discount Rate:";
case 2: //if item
name = "Item Information";
lbl1 = "Item No:";
lbl2 = "Item Name:";
lbl3 = "Cost Price:";
lbl4 = "Selling Price: ";
lbl5 = "Stock:";
case 3: //if user
name = "Staff Information";
lbl1 = "Staff ID:";
lbl2 = "Full Name:";
lbl3 = "Username:";
lbl4 = "Password: ";
lbl5 = "adminusercheck:";
default:
JOptionPane.showMessageDialog(alphaPOS,
"Something went wrong! Try again!",
"ERROR",
JOptionPane.ERROR_MESSAGE);
}
JPanel formPanel = new JPanel();
formPanel.add(new JLabel(lbl1));
formPanel.add(val1Field);
formPanel.add(Box.createHorizontalStrut(15)); // a spacer
formPanel.add(new JLabel(lbl2));
formPanel.add(val2Field);
formPanel.add(Box.createHorizontalStrut(15)); // a spacer
formPanel.add(new JLabel(lbl3));
formPanel.add(val3Field);
formPanel.add(Box.createHorizontalStrut(15)); // a spacer
formPanel.add(new JLabel(lbl4));
formPanel.add(val4Field);
formPanel.add(Box.createHorizontalStrut(15)); // a spacer
formPanel.add(new JLabel(lbl5));
formPanel.add(val5Field);
formPanel.add(Box.createHorizontalStrut(15)); // a spacer
int result = JOptionPane.showConfirmDialog(null, formPanel,
name, JOptionPane.OK_CANCEL_OPTION);
if (result == JOptionPane.OK_OPTION)
{
val1 = val1Field.getText();
val2 = val2Field.getText();
val3 = val3Field.getText();
val4 = val4Field.getText();
val5 = val5Field.getText();
}
return(option, val1, val2, val3, val4, val5);
}
을 (그렇게하는 방법을 잘하지만, 메신저 가이드 라인으로 this link here을 사용하고 기대하지 그것은 작동) 나는 값을 돌려 줄 수 없다는 것을 깨닫기 위해 잠시 시간을 들였고 대신 객체를 대신 반환 할 수있었습니다. 나는이 "테이블"(품목, 고객 및 직원) 각각을 위해 수업을 만들었습니다. 하지만 .. 위의 방법에있는 것은 테이블의 유형에 따라 레이블을 만들 수 있도록 스위치를 사용해야합니다.
내 질문은 메서드에 개체와 해당 이름을 전달할 수있는 방법이 있습니까? 아니면 내가 잘못 했니?
도움을 주시면 감사하겠습니다.
이것은 메소드를 의미합니까, 아니면 생성자입니까? –
방법. 생성자는 다른 곳에서 썼다. – Tsar
Java에 "output"매개 변수가 없습니다. 그래서 만약 호출자가'val1','val2'와 같은'String' 변수를 전달할 것이라는 의도로 메소드가 값을 채우게된다면, 당신은 다른 언어로 할 수있는 것처럼 자바로 할 수 없습니다 (C++ 또는 PHP 또는 Ada와 같은). – ajb