资源简介

java随机点名窗口小程序源码,经过多次版本调整,此版本2019最新版。 点名最讨厌的两件事:1.点到不想点的人。2.想点的人点不到 此次更新已完美解决,在后面加上了权重值。

资源截图

代码片段和文件信息

package com.ljl;

import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.IOException;
import java.util.Random;

import javax.swing.*;
import javax.swing.border.EmptyBorder;
import javax.swing.border.titledBorder;

public class Jarmframe extends Jframe implements ActionListener{
/**
 * 随机界面
 */
private static final long serialVersionUID = 932748174620540486L;

private static JTextArea jtextarea;
JButton button;
java.util.List users;


public Jarmframe() throws IOException {
this.init();
}

private void init() throws IOException {
setSize(350 130);
setLocationRelativeTo(null);
setContentPane(conentpane());
NameInfo info = new NameInfo();
users =  info.getUsers();
}

private JPanel conentpane() throws IOException {
JPanel panel = new JPanel();
panel.setBorder(new EmptyBorder(8 8 8 8));
panel.add(BorderLayout.WEST createTipane());
panel.add(BorderLayout.CENTER createJbutton());
return panel;
}

private JButton createJbutton() {
button = new JButton(“开始“);
button.setPreferredSize(new Dimension(60 46));;
button.addActionListener(this);
return button;
}

public static void setAlert(String str){
jtextarea.setText(str);
}

private JScrollPane createTipane() throws IOException {
JScrollPane pane = new JScrollPane();
pane.setBorder(new titledBorder(“姓名“));
jtextarea = new JTextArea();
Font x = new Font(“Serif“020);
jtextarea.setSize(190 40);
jtextarea.setFont(x);
jtextarea.setLineWrap(true);
jtextarea.setEditable(false);
pane.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
pane.getViewport().add(jtextarea);
return pane;
}

Thread t;
@Override
public void actionPerformed(ActionEvent e) {
if(e.getSource()== button){
if(!“停止“.equals(button.getText())){
final Random rd = new Random();
t = new Thread(){
public void run() {
while(true){
String name = users.get(rd.nextInt(users.size()-1));
setAlert(name);
try {
sleep(30);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
};
t.start();
button.setText(“停止“);
}else{
t.stop();
button.setText(“开始“);
}
}
}

public static void main(String[] args) throws IOException {
Jarmframe jf = new Jarmframe();
jf.setDefaultCloseOperation(Jframe.DO_NOTHING_ON_CLOSE);
jf.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
jf.setVisible(true);

}
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件         301  2012-05-31 09:58  .classpath
     文件         390  2012-05-31 09:58  .project
     目录           0  2019-09-17 11:21  .settings\
     文件         629  2012-05-31 09:58  .settings\org.eclipse.jdt.core.prefs
     目录           0  2019-09-17 11:22  bin\
     目录           0  2019-09-17 11:22  bin\com\
     目录           0  2019-09-17 13:32  bin\com\ljl\
     文件        1175  2019-09-17 13:33  bin\com\ljl\Jarmframe$1.class
     文件         613  2019-09-17 13:33  bin\com\ljl\Jarmframe$2.class
     文件        3952  2019-09-17 13:33  bin\com\ljl\Jarmframe.class
     文件        1858  2019-09-17 12:50  bin\com\ljl\NameInfo.class
     目录           0  2019-09-17 11:21  src\
     目录           0  2019-09-17 11:21  src\com\
     目录           0  2019-09-17 12:49  src\com\ljl\
     文件        2903  2019-09-17 13:33  src\com\ljl\Jarmframe.java
     文件        1161  2019-09-17 12:50  src\com\ljl\NameInfo.java
     文件          46  2019-09-20 12:29  User.txt
     文件         247  2019-09-20 12:37  使用说明.txt

评论

共有 条评论