导航:首页 > 编程语言 > java两个按钮

java两个按钮

发布时间:2022-09-08 12:12:43

java怎样放两个按钮在窗体的正中间

JPanel 放入到BorderLayout.CENTER , 那么会自动填充满整个contentPane的中间, 而JPanel内部还是流式布局, 一行排满 自动换到下一行,从上到下. 所以按钮还是在最上面.

(把JPanel的背景色改成蓝色,就可以清晰的看到JPanel填满了窗口)

importjavax.swing.*;

{
publicJFDemo2(){

JPanelpane=newJPanel();
BoxLayoutlayout=newBoxLayout(pane,BoxLayout.X_AXIS);//水平的盒布局
pane.setLayout(layout);

JButtonmessageButton=newJButton("OK");
JButtoncloseButton=newJButton("Cancel");
pane.add(Box.createGlue());//挤占ok按钮和窗口左侧空间
pane.add(messageButton);
pane.add(Box.createHorizontalStrut(20));//按钮之间的水平距离
pane.add(closeButton);
pane.add(Box.createGlue());//挤占cancel按钮和窗口右侧空间

add(pane);
setTitle("Demo");//标题
setSize(320,230);//窗口大小
setLocationRelativeTo(null);//窗口居中
setDefaultCloseOperation(EXIT_ON_CLOSE);//窗口点击关闭时,退出程序
}
publicstaticvoidmain(String[]args){
newJFDemo2().setVisible(true);
}
}

总结: 推荐使用方法二,使用盒布局来实现.

一般不推荐使用绝对布局/空布局 来布局窗口, 因为不同的操作系统下显示的效果不完全一致.

并且还需要写大量的代码来计算组件的大小和位置, 当窗口放大和缩小时 还需要重新计算位置

❷ Java编程。比如在一个面板上有两个按钮,怎么实现分别点击这两个按钮然后弹出不同的窗口我的代码不

importjava.awt.Color;
importjava.awt.event.ActionEvent;
importjava.awt.event.ActionListener;

importjavax.swing.JButton;
importjavax.swing.JFrame;
importjavax.swing.JPanel;

publicclassTestextendsJFrame{

publicTest(){
this.setSize(400,300);
this.setLocationRelativeTo(null);//设置居中
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

JPaneljp=newJPanel();

finalJButtonjb1=newJButton("弹出蓝色");
JButtonjb2=newJButton("弹出青色");

jp.add(jb1);
jp.add(jb2);

//给第一个按钮添加监听
jb1.addActionListener(newActionListener(){
publicvoidactionPerformed(ActionEvente){
JFramejf=newJFrame();
JPaneljp=newJPanel();
jf.setSize(200,200);
jf.add(jp);
jp.setBackground(Color.blue);
jf.setLocationRelativeTo(jb1);
jf.setVisible(true);
}
});
//给第二个按钮添加监听
jb2.addActionListener(newActionListener(){
publicvoidactionPerformed(ActionEvente){
JFramejf=newJFrame();
JPaneljp=newJPanel();
jf.setSize(200,200);
jf.add(jp);
jp.setBackground(Color.cyan);
jf.setLocationRelativeTo(jb1);
jf.setVisible(true);
}
});
this.add(jp);
}
publicstaticvoidmain(Stringarg[]){
newTest().setVisible(true);
}
}

❸ 急!!!高分!java设计两个按钮,按下以后显示不同图形,帮我看下已经写了一半的程序

你的程序我帮你改完了,你看看吧.(运行后能达到你的要求)

importjava.awt.*;

importjava.applet.Applet;

importjavax.swing.*;

importjava.awt.event.*;

{

JButtonjr1;

JButtonjr2;

Stringresult="";

intn;

JPaneljp1=newJPanel();

MyPaneljp2=newMyPanel();

publicvoidinit(){

setSize(300,300);

setLayout(newBorderLayout());

jr1=newJButton("circle");

jr2=newJButton("square");

jp1.add(jr1);

jp1.add(jr2);

jp1.setOpaque(false);

add(jp1,BorderLayout.NORTH);

add(jp2,BorderLayout.CENTER);

jr1.addActionListener(this);

jr2.addActionListener(this);

}

publicvoidactionPerformed(ActionEvente){

if(e.getSource()==jr1){

n=1;

repaint();

}

if(e.getSource()==jr2){

n=2;

repaint();

}

}

classMyPanelextendsJPanel{

publicvoidpaint(Graphicsg){

showGraphics(g);

}

publicvoidshowGraphics(Graphicsg){

switch(n){

case1:

g.setColor(Color.blue);

g.drawOval(30,30,160,160);

break;

case2:

g.setColor(Color.orange);

g.fillRoundRect(30,30,160,160,20,120);

break;

}

}

}

}

❹ java作业:一个窗口两个按钮,按按钮分别出来不同的字。。。。。。大神帮忙啊。。。

代码如下:

importjavax.swing.*;
importjava.awt.event.ActionEvent;
importjava.awt.event.ActionListener;

publicclassHelloIFrame{
privatestaticJTextAreaarea;
publicstaticvoidmain(String[]args){
JFramejf=newJFrame();
jf.setTitle("JAVA");
jf.setBounds(500,200,300,300);
JPanelcon=newJPanel(null);

area=newJTextArea();
area.setLineWrap(true);
JScrollPanejp=newJScrollPane(area);
jp.setBounds(10,10,280,200);
con.add(jp);
JButtonhelloButton=newJButton("HELLO!");
JButtonclearButton=newJButton("JAVA");
helloButton.addActionListener(newActionListener(){
@Override
publicvoidactionPerformed(ActionEvente){
area.setText("");
area.append("Hello!"+" ");
}
});
clearButton.addActionListener(newActionListener(){
@Override
publicvoidactionPerformed(ActionEvente){
area.setText("");
area.append("JAVA!"+" ");
}
});

helloButton.setBounds(70,220,75,30);
clearButton.setBounds(150,220,75,30);
con.add(helloButton);
con.add(clearButton);

jf.add(con);
jf.setResizable(false);
jf.setVisible(true);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}

如果满意请采纳!

❺ Java 两个按钮不同状态切换

一: 首先对需求进行分析:

两个不同的按钮,

两个事件接收器,

当按钮被点击后, 事件接收器接受到点击信息, 然后进行事件处理逻辑--->修改按钮的状态


二: 其次 对需要用的知识进行分析

A. 按钮状态的设置

按钮的状态----->不可见----->通过设置属性是否可见实现

JButtonbutton1=newJButton("按钮一");
button1.setVisible(false);//设置为不可见的状态

按钮的状态----->不可用----->通过设置属性是否用实现

JButtonbutton2=newJButton("按钮二");
button2.setEnabled(false);//设置为不可用的状态

B. 事件的接收器的设置, 已经书写

一般使用匿名内部类来书写接收器, 以及处理代码

button.addActionListener(newActionListener(){//为按钮添加事件接收器
publicvoidactionPerformed(ActionEvente){
//这里写事件处理代码
}
});

三: 效果图


//导入所需要的包
importjava.awt.*;
importjava.awt.event.*;
importjavax.swing.*;

{
//申明需要操作的按钮控件
privatefinalJButtonbutton1,button2;
publicFrameDemo(){
setTitle("按钮测试窗口");//设置窗口标题
setSize(220,80);//设置窗口的大小
setLocationRelativeTo(null);//设置窗口居于屏幕中央
setDefaultCloseOperation(EXIT_ON_CLOSE);//设置点击关闭时退出虚拟机
setLayout(newFlowLayout());//布局窗口为流式布局
button1=newJButton("按钮一");
button2=newJButton("按钮二");
button1.addActionListener(newActionListener(){//为按钮一设置事件接收器
publicvoidactionPerformed(ActionEvente){
button1.setVisible(false);//当按钮一被点击时,该按钮设置为不可见
}
});
button2.addActionListener(newActionListener(){//为按钮二设置事件接收器
publicvoidactionPerformed(ActionEvente){
button2.setEnabled(false);//当按钮二被点击时,该按钮设置为不可用
}
});
JPaneljp=newJPanel(newGridLayout(1,2));
jp.add(button1);
jp.add(button2);
add(jp);
}

publicstaticvoidmain(String[]args){
newFrameDemo().setVisible(true);//创建按钮窗口,并且设置为可见
}
}


五: 拓展思考

java 的源代码一般都遵循java 的规范,

属性的设置使用setXXX(...)方法

属性的获得使用getXxx(); 方法

使用的时候, 可以很方便的调用

所以, 我们平时开发java的时候也应该遵循java开发的规范. 会给我们的工作带来很多的便利

❻ 怎么用java实现在同一界面点击两个按钮进入两个不同界面

import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;

public class ButtonJFrame extends JFrame {
ButtonJFrame() {
super("ButtonJFrame");
JButton btnA = new JButton("打开FrameA");
JButton btnB = new JButton("打开FrameB");
this.setLayout(new BorderLayout());
this.getContentPane().add(btnA, BorderLayout.WEST);
this.getContentPane().add(btnB, BorderLayout.EAST);

btnA.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
new FrameA().setVisible(true);
}
});

btnB.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
new FrameB().setVisible(true);
}
});

this.setSize(320, 240);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
}

public static void main(String[] args) {
new ButtonJFrame();
}

class FrameA extends JFrame {
FrameA() {
super("FrameA");
this.setSize(160, 120);
}
}

class FrameB extends JFrame {
FrameB() {
super("FrameB");
this.setSize(160, 120);
}
}
}

阅读全文

与java两个按钮相关的资料

热点内容
美食博主用什么app拍视频 浏览:812
ipone手机如何加密微信 浏览:354
自来水加密阀阀帽 浏览:431
华为交换机dhcp配置命令 浏览:315
androidbitmap缩小 浏览:271
单片机串口控制灯 浏览:84
大讯云服务器安装视频 浏览:784
华为算法领先世界 浏览:654
linux路由重启 浏览:566
php的模板编程 浏览:320
编译器原理与实现书 浏览:709
dos选择命令 浏览:17
apm固件编译到单片机 浏览:121
联通深蓝卡都包含什么app 浏览:264
如何判断网络服务器正常 浏览:652
路由器搭桥远端服务器地址是什么 浏览:518
编译动态库时会连接依赖库吗 浏览:710
淘宝手机加密是随机的吗 浏览:675
解压包子怎么装饰 浏览:588
四个数凑24算法 浏览:679