皮皮网
皮皮网

【opencv图形拼接源码】【java高级画板源码】【psd头像源码社区】java gui源码

时间:2024-12-28 17:15:16 来源:neulenc300源码

1.GUI程序设计(java)
2.编写一个Java GUI
3.jgl文件是什么意思

java gui源码

GUI程序设计(java)

       =====================第一个类=============================

       /

**

       

*

        * 实现了系统计算器连续按"="和按"+","-","*","/"进行累记运算的模式

       

*

        * */

       import javax.swing.*;

       import java.awt.*;

       import java.awt.event.*;

       public class CalculatorFrame extends JFrame {

        private JTextField txtDis = new JTextField("0", ); //显示文本框

        private JButton[] btnGrp = new JButton[]; //个按钮

        private JPanel jpnMain = new JPanel(); //主面板

        private JPanel jpnNorth = new JPanel(); //上面板

        private JPanel jpnSouth = new JPanel(); //下面板

        private double numSaved; //保存的前一个数

        private String operator = ""; //保存的运算符号

        private String lastPress = ""; //上一次按的按钮("数字","运算符" 或 "等号")

        /*构造函数*/

        public CalculatorFrame() {

        //窗口设置

        setTitle("计算器");

        setSize(, );

        buttonInit(); //按钮初始化

        //主面板设置

        add(jpnMain);

        jpnMain.setLayout(null);

        jpnMain.add(jpnNorth);

        jpnMain.add(jpnSouth);

        jpnMain.add(btnGrp[]);

        btnGrp[].setBounds(8, , , ); //添加“=”按钮

        //上面板设置

        jpnNorth.setBounds(8, , , );

        jpnNorth.add(txtDis);

        txtDis.setHorizontalAlignment(JTextField.RIGHT); //设置文本右对齐

        txtDis.setEditable(false);

        //下面板设置

        jpnSouth.setBounds(8, , , );

        jpnSouth.setLayout(new GridLayout(4, 4));

        addSouthJpn(); //添加个按钮

        //添加监听器

        addListener();

        }

        /*个按钮显示值初始化*/

        public void buttonInit() {

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

        btnGrp[i] = new JButton("" + i);

        }

        btnGrp[] = new JButton(".");

        btnGrp[] = new JButton("+");

        btnGrp[] = new JButton("-");

        btnGrp[] = new JButton("*");

        btnGrp[] = new JButton("/");

        btnGrp[] = new JButton("=");

        btnGrp[] = new JButton("C");

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

        btnGrp[i].setFont(new Font("Dialog", Font.PLAIN, ));

        }

        }

        /*按网格顺序添加除“=”外个按钮*/

        public void addSouthJpn() {

        int[] index={ 7,8,9,,4,5,6,,1,2,3,,0,,,};

        for(int i=0;i<index.length;i++){

        jpnSouth.add(btnGrp[index[i]]);

        }

        }

        /*给按钮添加监听器*/

        public void addListener() {

        //给数字按钮添加监听器,btnGrp[]是"."号

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

        btnGrp[i].addActionListener(new ActionListener() {

        public void actionPerformed(ActionEvent e) {

        String button = ( (JButton) e.getSource()).getText();

        //如果有运算操作符或文本框数字为0并且按钮不为“。”

        if (lastPress == "运算符" || lastPress == "等号"

        || txtDis.getText().equals("0") && button != ".") {

        txtDis.setText(""); //清空文本框

        }

        if (lastPress == "等号") {

        operator = ""; //上次按的是=号,这次按数字,清空运算符

        }

        if (button == "." && txtDis.getText().indexOf(".") != -1) {

        } //这次按的是.文本框内已经包含.这种情况什么都不做,防止.重复

        else {

        txtDis.setText(txtDis.getText() + button); //文本框添加内容

        }

        lastPress = "数字";

        }

        });

        }

        //给运算操作符按钮添加监听器

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

        btnGrp[i].addActionListener(new ActionListener() {

        public void actionPerformed(ActionEvent e) {

        if (operator != "" && lastPress == "数字") { //运算符不为空并且之前按的是数字

        (btnGrp[].getActionListeners())[0].actionPerformed(e); //手动调用=号的监听响应实现=号功能

        }

        numSaved = Double.parseDouble(txtDis.getText()); //保存当前文本框的数字

        operator = ( (JButton) e.getSource()).getText(); //保存运算操作符

        lastPress = "运算符"; //添加运算符标记,下次文本框清空

        }

        });

        }

        //给等号按钮添加监听器

        btnGrp[].addActionListener(new ActionListener() {

        public void actionPerformed(ActionEvent e) {

        double numNow = Double.parseDouble(txtDis.getText()); //当前文本框的数字

        //运算符匹配操作

        if (operator.equals("+")) {

        txtDis.setText( (numSaved + numNow) + "");

        }

        else if (operator.equals("-")) {

        if (lastPress == "等号") { //累记运算时的算法(一直按等号)

        txtDis.setText( (numNow - numSaved) + "");

        }

        else {

        txtDis.setText( (numSaved - numNow) + "");

        }

        }

        else if (operator.equals("*")) {

        txtDis.setText( (numSaved * numNow) + "");

        }

        else if (operator.equals("/")) {

        if (lastPress == "等号") { //累记运算时的算法(一直按等号)

        txtDis.setText( (numNow / numSaved) + "");

        }

        else {

        txtDis.setText( (numSaved / numNow) + "");

        }

        }

        if (lastPress != "等号") { //是第一次,以后按累记运算

        numSaved = numNow; //保存数改为后一个数

        }

        lastPress = "等号"; //添加运算符标记,下次文本框清空

        }

        });

        //给复位符“C”按钮添加监听器

        btnGrp[].addActionListener(new ActionListener() {

        public void actionPerformed(ActionEvent e) {

        txtDis.setText("0");

        numSaved = 0;

        operator = "";

        lastPress = "";

        }

        });

        }

       }

       =====================第二个类=============================

       import javax.swing.*;

       public class Test {

        public Test() {

        CalculatorFrame calframe = new CalculatorFrame(); //新窗口

        calframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //设置关闭

        calframe.setLocationRelativeTo(null); //窗口置中

        calframe.setVisible(true); //显示窗口

        calframe.setDefaultLookAndFeelDecorated(false); //使用windows视感

        calframe.setResizable(false); //窗口不可调大小

        }

        public static void main(String[] args) {

        Test test = new Test();

        }

       }

编写一个Java GUI

       è¯•ä¸€ä¸‹ä¸‹é¢çš„代码

       ï¼ˆå¦‚果点击按钮后没有任何变化,将窗口最小化一下就有了)

       æ²¡æœ‰å‡ºçŽ°è¿™ä¸ªé—®é¢˜çš„话,也请告诉我一下~

       import java.awt.*;

       import java.awt.event.*;

       import javax.swing.*;

       import java.util.*;

       public class painting extends JFrame implements ActionListener{

       private JButton round,rectangle,ellipse,beeline;

       private JLabel xaxis,yaxis,remain,information;

       private JTextField xTF,yTF;

       private BorderLayout layout;

       private Container cp;

       private JPanel pCenter;

       Vector<Object> v=new Vector<Object>(); //定义一个集合类用于存储按钮对象

       public painting(){ //构造方法 ------------------框架初始化-------------------

       setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

       setTitle("painting");

       setSize(,);

       layout = new BorderLayout();

       cp = getContentPane();

       cp.setLayout(layout);

       round= new JButton("画圆");

       rectangle= new JButton("画矩形");

       ellipse= new JButton("画椭圆");

       beeline= new JButton("画直线");

       xaxis=new JLabel("x坐标");

       yaxis=new JLabel("y坐标");

       remain=new JLabel("右下角坐标(,) ");

       xTF=new JTextField("0",5);

       yTF=new JTextField("0",5);

       JPanel pUp= new JPanel();//第一个面板 在上部

       pUp.add(remain);

       pUp.add(xaxis);//置两个文本框

       pUp.add(xTF);

       pUp.add(yaxis);

       pUp.add(yTF);

       cp.add(pUp, "North");

       //pCenter=new JPanel();//第二个面板 在中部

       //pCenter.add(information);//置显示说明与画图区

       //cp.add(pCenter,"Center");

       JPanel pDown= new JPanel();//第三个面板 在下部

       pDown.add(round);// 置四个按钮

       pDown.add(rectangle);

       pDown.add(ellipse);

       pDown.add(beeline);

       cp.add(pDown, "South");

       round.addActionListener(this); //置按钮监听--------------按钮行为监听与响应-------------

       rectangle.addActionListener(this);

       ellipse.addActionListener(this);

       beeline.addActionListener(this);

       }

       public void actionPerformed(ActionEvent e) { //监听响应

       v.add(e.getSource());//将按钮情况存入v中

       }

       public void paint(Graphics g) { //--------------绘图响应-------------

       super.paint(g);

       int xx=Integer.parseInt(xTF.getText());//获取位置值

       int yy=Integer.parseInt(yTF.getText());

       int size=0;

       Object o;

       //while(v.size()!=size){ //当用户点击按钮选择某一种图形时,v的大小就会比size值大1,当绘图完成后,v.size又等于size;效果就是:出现点击 即刻处理

       o=v.lastElement();

       if(o == round) { g.drawOval(xx,yy,,);}

       else if (o == rectangle){ g.drawRect(xx,yy,,);}

       else if (o == ellipse) { g.drawOval(xx,yy,,);}

       else if(o == beeline) { g.drawLine(xx,yy,xx+,yy);}

       size++;

       }

       }

       public static void main(String[] args){ // ------------程序入口-------------

       JFrame frame = new painting();

       frame.setVisible(true);

       }

       }

jgl文件是什么意思

       根据我的搜索,JGL文件可以指多个不同类型的文件,具体取决于上下文和应用程序。

       以下是opencv图形拼接源码一些JGL文件类型及其含义:

       1. JGL script File:JGL脚本文件是Java GUI语言(JGL)的源代码文件。JGL是一个基于Java的用户界面框架,用于创建和管理GUI应用程序。java高级画板源码JGL脚本文件通常包含GUI控件的定义和其属性设置。

       2. JGraph Layout File:JGraph是一个用于创建和显示图形的Java库。JGL文件可以指JGraph中的布局文件,该文件包含有关图形布局和排列的信息,例如节点位置和边的路径。

       3. Jigsaw Glue File:Jigsaw是Java平台的一个模块系统。JGL文件可以是psd头像源码社区Jigsaw Glue文件,用于指定模块之间的依赖关系和模块规范等信息。这些文件通常用于构建和管理Java模块化应用程序。

       4. JGlobalLab Project File:JGlobalLab是集安渭源码头一个用于科学计算和数据分析的Java应用程序。JGL文件可以是JGlobalLab项目文件,包含项目设置、数据文件和计算脚本等信息。ectouch最新源码因此,需要更具上下文判断JGL文件的具体类型和含义。

更多内容请点击【综合】专栏