您的位置:

一个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);

//设置可见