欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

设计窗口界面,包含一个启动按钮,和两个文本框,单击启动按钮后,执行打印输出字符a和数字的多线程代码,每次在控制台打印输出字符时,同时在窗口中不同的文本框中追加显示出来。

程序员文章站 2022-05-28 21:49:26
...

界面:

import javax.swing.*;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import javax.swing.JScrollPane;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
import javax.swing.table.DefaultTableModel;
public class testindex extends JFrame {
public testindex() {
JPanel panel = new JPanel();
JPanel pane2 = new JPanel();
final JTextField Field1 = new JTextField(20);
final JTextField Field2= new JTextField(20);
JButton 启动 = new JButton("启动");
启动.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
addnum add1 = new addnum(100, Field1);
addchar add2 = new addchar('a', 100, Field2);
add1.start();
add2.start();
}
});
panel.add(Field1);
pane2.add(Field2);
this.add(panel, BorderLayout.NORTH);
this.add(pane2,BorderLayout.CENTER);
this.add(启动, BorderLayout.SOUTH);
}
public static void main(String[] args) {
testindex frame = new testindex();
frame.setVisible(true);
frame.setSize(400, 300);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setLocationRelativeTo(null); }}





追加数字:


import javax.swing.JTextField;

public class addnum extends Thread {
private int lastNum;
private JTextField field;
public addnum(int n, JTextField field) {
lastNum = n;
this.field = field;
}
@Override
public void run() {
// TODO Auto-generated method stub
String s = "";
for(int i = 1; i <= lastNum; i++) {
s+=i;
this.field.setText(s);
try {
Thread.sleep(100);
} catch (InterruptedException e) {
// TODO: handle exception
}
}
}
}




追加字符:

import javax.swing.JTextField;
public class addchar extends Thread {
private char charToPrint; private int times;
private JTextField field;
public addchar(char c, int t, JTextField field) {
charToPrint = c; times = t; this.field = field;
}
@Override
public void run() {
// TODO Auto-generated method stub
try {
Thread.sleep(50);
}
catch (InterruptedException e) {
// TODO: handle exception
}
String s = "";
for(int i = 0; i < times; i++) {
s+=charToPrint; this.field.setText(s);
try { Thread.sleep(100);
}
 catch (InterruptedException e) {
// TODO: handle exception }
}
}
}


设计窗口界面,包含一个启动按钮,和两个文本框,单击启动按钮后,执行打印输出字符a和数字的多线程代码,每次在控制台打印输出字符时,同时在窗口中不同的文本框中追加显示出来。设计窗口界面,包含一个启动按钮,和两个文本框,单击启动按钮后,执行打印输出字符a和数字的多线程代码,每次在控制台打印输出字符时,同时在窗口中不同的文本框中追加显示出来。