JAVA 编写一个java图形GUI程序,比较大小数并输出

JAVA 编写一个java图形GUI程序,比较大小数并输出,第1张

1首先定义三个输入框

JTextField firstNumber;

JTextField secontdNumber;

JTextField maxNumber;

2然后怎样生成并把它们放到界面上我就不多说了。

3接下来生成最大数按钮maxNumberButton和关闭按钮closeButton,并放在界面上。

然后让maxnNumberButton监听鼠标单击事件

maxNumberButtonaddMouseListener(new MouseAdapter() {

if (SwingUtilitiesisLeftMouseButton(e)) {//判断是否鼠标左键按下

//在这里获得第一个和第二个数并比较获得最大的数,当然,你还可以首先判断是否已经输入了两个数,判断输入的两个值是否是数值等等的。你也可以在外边实现一个方法,直接返回最大值。然后是把最大值显示出来。

//从输入框直接获得的是string,你要自己转换成数值,具体怎样做我就不说了。默认你已经获得了两个值,并得到最大值max,顺便说一下float和double是不能直接大于小于这样比较的。

maxNumbersetText("");//首先把之前显示的清除

maxNumbersetText(max);

}

});

关闭按钮处理类似

closeButtonaddMouseListener(new MouseAdapter() {

if (SwingUtilitiesisLeftMouseButton(e)) {

Systemexit(0);

}

});

第一题:

import javaawteventActionEvent;

import javaawteventActionListener;

import javaxswingButtonGroup;

import javaxswingJButton;

import javaxswingJFrame;

import javaxswingJLabel;

import javaxswingJPanel;

import javaxswingJRadioButton;

public class RadioTest extends JFrame{

private JRadioButton jrb1;

private JRadioButton jrb2;

private JLabel jlbl;

private JPanel jp;

private JButton jbtn;

private String jlstr;

private ButtonGroup bg;

public RadioTest(){

jlstr = "你选择的是:";

thissetTitle("实现单选按钮的效果");

jrb1 = new JRadioButton("男");

jrb2 = new JRadioButton("女");

bg = new ButtonGroup();

bgadd(jrb1);

bgadd(jrb2);

jlbl = new JLabel(jlstr);

jbtn = new JButton("退出");

jbtnaddActionListener(new ActionListener() {

@Override

public void actionPerformed(ActionEvent e) {

// TODO Auto-generated method stub

Systemexit(1);

}

});

jrb1addActionListener(new ActionListener() {

@Override

public void actionPerformed(ActionEvent e) {

// TODO Auto-generated method stub

if(egetSource()==jrb1){

jlblsetText(jlstr+jrb1getText());

}

}

});

jrb2addActionListener(new ActionListener() {

@Override

public void actionPerformed(ActionEvent e) {

// TODO Auto-generated method stub

if(egetSource()==jrb2){

jlblsetText(jlstr+jrb2getText());

}

}

});

jp = new JPanel();

jpadd(jrb1);

jpadd(jrb2);

jpadd(jlbl);

jpadd(jbtn);

thisadd(jp);

thissetBounds(300, 300, 230, 200);

thissetVisible(true);

thissetDefaultCloseOperation(JFrameEXIT_ON_CLOSE);

}

public static void main(String[] args) {

// TODO Auto-generated method stub

RadioTest rt = new RadioTest();

}

}

的确网上很多代码都是JavaScript的 但是很多编程语言都是相同的思路 只要看懂了JavaScript,一样可以迁移到java里使用了

思路: 按钮都存入同一个容器里, 然后点击按钮后 ,所有的按钮恢复为初始的颜色,然后在设置点击按钮的背景色为红色即可

(当然思路很多,这是其中最简单的一种思路; 

另外提示一种思路,使用一个变量lastBtn 用于记录上一次点击的按钮, 点击按钮后,先把上一次按钮的颜色恢复成默认的颜色, 如果上一次点击的按钮为null ,那么忽略不设置; 然后再把这次点击的按钮 nowBtn设置成红色,最后lastBtn=nowBtn)

import javaxswing;

import javaawt;

import javaawtevent;

public class ButtonFrame extends JFrame implements ActionListener {

JButton[] jbs;// 把按钮存放到一个数组或集合里

Color bgColor;// 保存按钮的默认背景颜色

Color fgColor;// 保存按钮的默认前景色(文字颜色)

public ButtonFrame() {

JPanel jp = new JPanel();

jbs = new JButton[3];

// 初始化数组,并赋值

for (int i = 0; i < jbslength; i++) {

jbs[i] = new JButton("按钮" + (i + 1));

jbs[i]addActionListener(this);

jpadd(jbs[i]);// 把按钮依次添加到面板中

}

bgColor = jbs[0]getBackground();

fgColor = jbs[0]getForeground();

add(jp);

setSize(320, 100);

setLocationRelativeTo(null);

setDefaultCloseOperation(EXIT_ON_CLOSE);

// 初始时,默认按下了第一个按钮

// addWindowListener(new WindowAdapter() {

// @Override

// public void windowOpened(WindowEvent e) {

// jbs[0]doClick();

// }

// });

}

public static void main(String[] args) {

SwingUtilitiesinvokeLater(new Runnable() {

public void run() {

new ButtonFrame()setVisible(true);

}

});

}

// 点击按钮,把所有按钮的背景色和文字颜色都复原;然后设置点击按钮的背景色和文字颜色

@Override

public void actionPerformed(ActionEvent e) {

for (int i = 0; i < jbslength; i++) {

jbs[i]setBackground(bgColor);

jbs[i]setForeground(fgColor);

}

// 设置只有按钮1 点击会变色, 其他按钮被点击不会变色

// if(!egetActionCommand()equals("按钮1")){

// return;

// }

// 获取被点击的按钮

JButton clickBtn = (JButton) egetSource();

clickBtnsetBackground(ColorRED);

clickBtnsetForeground(ColorWHITE);

}

}

参考代码,

注意的路径,拿不准的话,就使用绝对路径吧

import javaawt;

import javaawtevent;

import javaxswing;

//我的路径是 src\\images\\1gif  有四张 从1jpg~~4jpg

public class ImageDemo extends JFrame {

JLabel jl;

JPanel jp;

public ImageDemo() {

jp = new JPanel();

int i;

for (i = 0; i < 4; i++) {

if(i ==0){//初始化的时候,默认显示的

jl = new JLabel(new ImageIcon("src\\images\\"+1+"gif"));

}

//按钮

JButton jb = new JButton("第"+(i+1)+"张图");

int z = i;

//当按钮点击的时候

jbaddActionListener(new ActionListener() {

@Override

public void actionPerformed(ActionEvent e) {

//设置jl的

jlsetIcon(new ImageIcon("src\\images\\"+(z+1)+"gif"));

}

});

jpadd(jb);

}

thissetLocation(200, 120);

thissetSize(500,200);

thissetLayout(new BorderLayout());

thisadd(jl);

thisadd(jp,BorderLayoutSOUTH);

thissetTitle("浏览");

thissetDefaultCloseOperation(EXIT_ON_CLOSE);

thissetVisible(true);

}

public static void main(String[] args) {

new ImageDemo();

}

}

欢迎分享,转载请注明来源:品搜搜测评网

原文地址:https://pinsoso.cn/meirong/2225381.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-11-18
下一篇2023-11-18

随机推荐

  • 研春堂蜗牛魔力白芦荟补水保湿后面乳怎么样

    你好,综合你的情况在孕期是可以使植物含有芦荟成分的护肤品的,也可用使用孕妇专用的护肤品。建议,孕期应注意休息,避免过度劳累,保持心情舒畅,多吃富含维生素及高蛋白的食物,避免寒凉辛辣刺激性食物,定期孕期检查。1、《沁园春·再到期思卜筑》宋代:

    2024-04-15
    55700
  • 精华露和精华液的区别

    精华露和精华液的区别在于质地不同、使用方法不同、适合人群不同。1、质地不同精华露是高浓缩后的护肤品,例如著名品牌SK神仙水就是这类型的产品,质地较为粘稠,更适合干性皮肤使用。但对于油性肌肤,因为油脂分泌旺盛的缘故,不太适合多种精华类的护肤品

    2024-04-15
    56600
  • jovisse富勒烯白金套盒和黑松露黑金套盒哪个好

    黑松露和富勒烯功效不同,都很好的成分哦。富勒烯美容功能:1、抗皱,且能防止皱纹的产生,并在皱纹产生后,可得到有效改善。并能降低皮肤中胶原蛋白分解酶的活性,从而避免肌肤中胶原蛋白的分解流失。2、清除活性氧,富勒烯对皮肤中的活性氧具有清除效果,

    2024-04-15
    50400
  • 温暖的弦张钧甯口红什么牌子的 张钧甯同款口红温暖大方

      电视剧《温暖的弦》正在热播,张钧甯饰演的温暖气质优雅,落落大方,那在第一集中张钧甯口红是什么牌子的呢温暖七年后鼓起勇气去见占南弦,妆容可是很重要的。当年两人因误会分手,再次相见有说不出的情愫,而温暖则需要口红提高自信,在占南弦面前来个华

    2024-04-15
    41500
  • 7月在某东买的妮维雅男士日期MFG20170329,今天超市买EXP20200511,为啥有区别!

    根据您提供的信息,这两款妮维雅男士产品的生产日期和保质期存在明显的差异。一般来说,产品的生产日期和保质期是反映其质量和安全性的重要指标。下面是一些可能导致这种差异的原因:1 不同批次的产品:妮维雅男士产品可能会在不同的时间批次生产。不同批次

    2024-04-15
    47000
  • 李佳琦直播预告清单10.21 李佳琦直播预告10.21

    李佳琦直播预告清单1021 李佳琦直播预告1021。10月21日的李佳琦直播将在16:00正式开始,那么今天会有哪些内容,这次都卖了些什么呢,下面小编给大家带来李佳琦2021年10月21日双十一直播的内容预告,一起来看看吧。李佳琦直播预告清

    2024-04-15
    48000
  • 美白身体乳排名第一名

    美白身体乳排名第一是妮维雅身体乳。妮维雅是一家德国大型性护肤品和身体护理品品牌,也是一家致力于护肤品研发和销售的跨国企业,成立于1911年,总部位于上海。该公司旗下品牌妮维雅在市场上拥有很高的知名度和美誉度,是美白身体乳排名第一名,其品牌形

    2024-04-15
    41200

发表评论

登录后才能评论
保存