本文目录一览:
- 1、一个java项目中有3个窗体,从jform1-->jform2-->jform3-->jform2,请问从jform3到jform2的代码怎么写?
- 2、java中如何在三个窗体之间切换?
- 3、java编程,设计一个窗体,要有三个部分(文本框、按钮、标签),按钮内容输出到文本框
- 4、100张票,用java多线程实现3个窗口按顺序依次卖票,如何实现
- 5、java多线程问题:模拟10个人在3个窗口买票的过程
- 6、JAVA创建一个窗体,3个组件 一个文本框 一个标签 一个按钮
一个java项目中有3个窗体,从jform1-->jform2-->jform3-->jform2,请问从jform3到jform2的代码怎么写?
1到2,需要2的对象,2到3需要3的对象。 在3中加一个属性,属性类型就是2, 2在跳转3的时候,产生3的对象,3对象.属性(这个属性是2类型)=this(这个this就是2本身),3打开后,3.属性在打开,就回到2.
不知道你懂不懂,就是一个引用的传递,将自己传过去,因为如果不传自己,将打开新的窗体,不是之前的。
java中如何在三个窗体之间切换?
这只是一个监听问题而已
假设窗体1的绘制方法是JFrame1(),窗体2的绘制方法是JFrame2(),窗体3的绘制方法是JFrame3();按钮一次为go1,go2,back2,back3;
那么监听:
public void actionPerformed(ActionEvent e){//监听
if(e.getSource()==go1) JFram2();//点击窗体1的go就绘制窗体2
if(e.getSource()==go2) JFram3();//点击窗体2的go就绘制窗体3
if(e.getSource()==back2) JFram1();//点击窗体2的back就绘制窗体1
if(e.getSource()==back3) JFram2();//点击窗体3的back就绘制窗体2
}
明白了?
java编程,设计一个窗体,要有三个部分(文本框、按钮、标签),按钮内容输出到文本框
package anfang;
import java.awt.*;
import java.awt.event.*;
public class example1 extends Frame{
Frame frm;
Button btn1,btn2,btn3,btn4;
TextField txt1,txt2,txt3;
public example1()
{
setLayout(null);
btn1 = new Button("+");
btn1.setLocation(55,55);
btn1.setSize(80,20);
class BtnClick implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
txt3.setText(""+(Integer.parseInt(txt1.getText())+Integer.parseInt(txt2.getText())));
}
}
BtnClick bc=new BtnClick();
btn1.addActionListener(bc);
add(btn1);
btn2 = new Button("-");
btn2.setLocation(50,100);
btn2.setSize(80,20);
class BtnClick1 implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
txt3.setText(""+(Integer.parseInt(txt1.getText())-Integer.parseInt(txt2.getText())));
}
}
BtnClick1 bc1=new BtnClick1();
btn2.addActionListener(bc1);
add(btn2);
btn3 = new Button("*");
btn3.setLocation(50,150);
btn3.setSize(80,20);
class BtnClick2 implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
txt3.setText(""+Integer.parseInt(txt1.getText())*Integer.parseInt(txt2.getText()));
}
}
BtnClick2 bc2=new BtnClick2();
btn3.addActionListener(bc2);
add(btn3);
btn4 = new Button("/");
btn4.setLocation(50,200);
btn4.setSize(80,20);
class BtnClick3 implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
txt3.setText(""+Integer.parseInt(txt1.getText())/Integer.parseInt(txt2.getText()));
}
}
BtnClick3 bc3=new BtnClick3();
btn4.addActionListener(bc3);
add(btn4);
txt1 = new TextField();
txt1.setLocation(200,60);
txt1.setSize(80,20);
add(txt1);
txt2 = new TextField();
txt2.setLocation(200,120);
txt2.setSize(80,20);
add(txt2);
txt3 = new TextField();
txt3.setLocation(200,180);
txt3.setSize(80,20);
add(txt3);
}
public static void main(String[] args) {
// TODO Auto-generated method stub
example1 frm=new example1();
frm.setSize(450,300);
frm.show();
}
}
100张票,用java多线程实现3个窗口按顺序依次卖票,如何实现
很简单, 出票里加锁就行了完整代码:
public class Test {
public static void main(String[] args) {
for(int i=0; i3; i++){
new Thread("线程 " + i){
public void run() {
while(true){
int p = getNumber();
if(p 0 ){
System.out.println(getName() + " 票号: " + p);
}else{
System.out.println("没票了");
break;
}
}
};
}.start();
}
}
public static int num = 100; //总票数
/**
* synchronized 同步锁
* @return
*/
public static synchronized int getNumber(){
if(num 0){
return num --; //如果大于0, 则返回当前票并减少一张
}
return 0;
}
}
java多线程问题:模拟10个人在3个窗口买票的过程
public class TicketsSystem {
public static void main(String[] args) {
SellThread st = new SellThread();
Thread th1 = new Thread(st);
th1.start();
Thread th2 = new Thread(st);
th2.start();
Thread th3 = new Thread(st);
th3.start();
}
}
class SellThread implements Runnable {
private int number=10;
String s = new String();
public void run() {
while (number 0) {
synchronized (s) {
System.out.println("第" + number + "个人在"
+ Thread.currentThread().getName() + "买票");
}
number--;
try {
Thread.sleep(10);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
synchronized (s)的s是synchronized 的参数,synchronized 的参数可以是任意对象,我定义了一个String类型的对象s,方便看程序而已。
但是要注意,s的定义一定要在run方法之外,不然还会出现负数。因为你启动了3个线程,每个线程都调用了run方法,在每个线程就会在run方法里边产生自己的s对象,一共会产生3个,达不到同步的目的。
如果还有不明白的,可以继续问。
JAVA创建一个窗体,3个组件 一个文本框 一个标签 一个按钮
Frame
f
=
new
Frame();
//创建一个
窗体
f.setBounds(200,200,400,300);
//设置一个在(200,200)
坐标
为
起点
,宽400高300的窗体
TextField
tf
=
new
TextField();
//创建一个
文本框
Label
l
=
new
label("标签名");
Button
btn
=
new
Button("按钮");
//向窗体添加3个
组件
f.add(tf);
f.add(l);
f.add(btn);
f.setVisiable(true);
//设置可见