이 기사의 예제는 Java 투표 프로그램 디자인 코드에 대해 알려주고 참조를 위해 공유하십시오. 특정 내용은 다음과 같습니다
실행 렌더링 :
절차는 다음과 같습니다.
import java.awt.*; import java.awt.event.*; import java.awt.event.actionevent; import java.awt.event.actionlistener; import java.util.stringtokenizer; import javax.swing. 개인 JPANEL P1, P2, P3, P2_1; 개인 jlabel label1, label2, label3; 개인 jtextfield 이름, Votemess; 개인 Jtextfield SchoolVote []; 개인 JBUTTON COM, CON, SURE, RESH, 정렬; 개인 확인란 확인란 []; 개인 int [] 수; Private Int TotalVote, Scholitnumber, Max, Dis, Pofup; public voteTest () {frame = new Jframe ( "중국 대학 순위 투표 시스템 v1.0"); p1 = 새로운 jpanel (); p2 = 새로운 jpanel (); p3 = 새로운 jpanel (); label1 = new Jlabel ( "먼저 후보 학교의 이름을 입력합니다 (숫자가 10을 초과하지 않음, 쉼표로 분리);"); label2 = new Jlabel ( "다음 선택 상자를 사용하여 투표를 세겠습니다.", jlabel.center); label3 = New Jlabel ( "선거 결과 :"); 이름 = New Jtextfield (10); Votemess = New Jtextfield (46); SchoolVote = New Jtextfield [10]; com = new Jbutton ( "확인"); con = new Jbutton ( "취소"); Sure = New Jbutton ( "확인"); resh = new Jbutton ( "새로 고침"); Sort = New JButton ( "정렬"); CheckBox = 새 확인란 [10]; p2_1 = 새로운 jpanel (); count = new int [10]; // 학교에서 투표 수를 기록하십시오. TotalVote = 0; Schoolnumber = 0; 최대 = 3; dis = 0; 포도시 = 0; init (); } public void init () {frame.setLayout (New GridLayout (3,1)); frame.add (p1); frame.add (p2); frame.add (p3); p1.setLayout (New BorderLayout ()); p1.add (label1, borderlayout.north); p1.add (이름, borderlayout.center); JPANEL P1_3; p1_3 = 새로운 jpanel (); p1_3.add (com); p1_3.add (con); p1_3.add (label2); p1.add (p1_3, borderlayout.south); p2.setLayout (new BorderLayout ()); JPANEL P2_2; p2_2 = 새로운 jpanel (); P2_1.SetLayout (New GridLayout (2,5)); for (int i = 0; i <= 9; i ++) {checkbox = new Checkbox (); p2_1.add (checkbox); } p2_2.add (resh); p2_2.add (resh); p2_2.add (sort); p2.add (p2_1, borderlayout.center); p2.add (p2_2, borderlayout.south); p3.setlayout (new borderlayout ()); Jpanel p3_1, p3_2; p3_1 = new jpanel (); p3_2 = new jpanel (); p3_1.add (label3); p3_1.add (votemess); p3_2.setlayout (new Gridlayout (10,1)); for (int i = 0; i <= 9; i ++) {SchoolVote = new jtextfield (); p3_2.add (Schoolvote); } scrollpane scroll = new ScrollPane (); scroll.add (p3_2); p3.add (p3_1, borderlayout.north); p3.add (scroll, borderlayout.center); com.addactionListener (this); con.addactionListener (this); Sure.AddActionListener (this); resh.addactionListener (this); sort.addactionListener (this); } public void show () {frame.pack (); frame.setVisible (true); frame.setDefaultCloseOperation (jframe.exit_on_close); } / * (nonjavadoc) * @see java.awt.event.actionListener#ActionPerformed (java.awt.event.actionEvent) * / public void ActionPerformed (ActionEvent e) {// a auto-regenderated method stub string s [] = new String [10]; if (e.getSource () == com) {p2_1.removeall (); 문자열 s_name = name.getText (); // 쉼표로 분리 된 후보자 이름 추출 (영어 쉼표 또는 중국 쉼표); StringTokenizer fenxi = New StringTokenizer (s_name, ",,"); SchoolNumber = fenxi.counttokens (); // 후보 수를 얻습니다 int i = 0; while (fenxi.hasmoretokens ()) {// 라디오 박스가있는 후보자를 대표하고 패널 p2_1 s = fenxi.nexttoken ()에 추가합니다. p2_1.add (checkbox); checkbox.setLabel (들); i ++; } for (int k = 0; k <SchoolNumber; K ++) {SchoolVote [k] .settext (null); }} else if (e.getSource () == con) {name.settext (null); com.setenabled (true); for (int k = 0; k <SchoolNumber; K ++) {SchoolVote [k] .settext (null); }} else if (e.getSource () == 확실한) {TotalVote = TotalVote+1; com.setenabled (false); int 번호 = 0; for (int k = 0; k <SchoolNumber; k ++) {if (checkbox [k] .getState ()) {번호 ++; }} if (number> max) {dis ++; for (int k = 0; k <SchoolNumber; k ++) {checkbox [k] .setstate (false); }} else if (number == 0) {powup ++; } else if (number> 0 && number <= max) {for (int k = 0; k <schoolnumber; k ++) {if (checkbox [k] .getState ()) {count [k] = count [k] +1; checkbox [k] .setstate (false); SchoolVote [k] .settext (checkbox [k] .getLabel ()+"투표 수 :"+count [k]); } else {SchoolVote [k] .settext (checkbox [k] .getLabel ()+"투표 수 :"+count [k]); }}} votemess.settext ( "+totalvote+"투표 수와 금기 투표는 다음과 같습니다. "+powup+"는 유효하지 않습니다. "+dis); } else if (e.getSource () == sort) {for (int i = 0; i <SchoolNumber; i ++) {for (int j = i+1; j <schoolnumber; j ++) {if (count [j]> count) {String str_temp = schoolvote.getText (); SchoolVote.settext (SchoolVote [j] .getText ()); SchoolVote [j] .settext (str_temp); int nnn = count; count = count [j]; count [j] = nnn; }}} sort.setenabled (false); SETE.SETENABLED (false); } else if (e.getSource () == resh) {totalvote = 0; VotEmess.settext ( "그것은 계산되었습니다 :"+TotalVote+"Zhang Vites"); name.settext (null); com.setenabled (true); SETE.SETENABLED (true); Sort.SetEnabled (true); for (int i = 0; i <= 4; i ++) {count = 0; SchoolVote.settext (null); p2_1.removeall (); }}} / ** * @param args * / public static void main (string [] args) {// todo 자동 생성 메소드 stub new votetest (). show (); }}이 기사가 모든 사람이 Java 소프트웨어 프로그래밍을 배우는 데 도움이되기를 바랍니다.