「java图形化编程教程」图形化编程语言

博主:adminadmin 2022-11-22 13:48:09 69

今天给各位分享java图形化编程教程的知识,其中也会对图形化编程语言进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

java 绘图程序

我基于你原来画图的方法,添加了事件触发的命令b[j].setActionCommand("b" + j);否则你不能在事件响应处理的方法中使用e.getActionCommand(),而且字符串的比较用equals方法比较好。现在可以运行了,你可以看一下:

import java.applet.Applet;

import java.awt.*;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

public class drawing extends Applet implements ActionListener {

Button b[] = new Button[5];

String fontname = "仿宋_GB2312";

int style = Font.PLAIN;

int size = 24;

int index = 0;

Font myfont;

public void init() {

setSize(700,700);

myfont = new Font(fontname, style, size);

b[0] = new Button("扇形");

b[1] = new Button("圆形");

b[2] = new Button("三角形");

b[3] = new Button("长方形");

b[4] = new Button("椭圆形");

for (int j = 0; j b.length; j++) {

b[j].setBounds(10, 10, 50, 20);

b[j].addActionListener(this);

b[j].setActionCommand("b" + j);

add(b[j]);

}

}

public void actionPerformed(ActionEvent e) {

if (e.getActionCommand().equals("b0")) {

index = 0;

repaint();

}

if (e.getActionCommand().equals("b1")) {

index = 1;

repaint();

}

if (e.getActionCommand().equals("b2")) {

index = 2;

repaint();

}

if (e.getActionCommand().equals("b3")) {

index = 3;

repaint();

}

if (e.getActionCommand().equals("b4")) {

index = 4;

repaint();

}

}

public void paint(Graphics g) {

switch (index) {

case 0:

g.fillArc(0, 60, 80, 60, 30, 120);

break;

case 1:

g.drawOval( 300, 50, 60, 60);

break;

case 2:

Polygon filledPolygon = new Polygon();

filledPolygon.addPoint(380, 50);

filledPolygon.addPoint(380, 110);

filledPolygon.addPoint(450, 90);

g.drawPolygon(filledPolygon);

break;

case 3:

g.drawRect( 200, 50, 80, 60);

break;

case 4:

g.drawOval(100, 50, 80, 60);

break;

default:

g.fillArc(0, 60, 80, 60, 30, 120);

break;

}

}

/*

* public void paint(Graphics g) { g.fillArc( 0, 60, 80, 60, 30, 120);

* //绘制扇形 g.drawOval( 100, 50, 80, 60); g.drawRect( 200, 50, 80, 60);

* g.drawOval( 300, 50, 60, 60); Polygon filledPolygon=new Polygon();

* filledPolygon.addPoint(380,50); filledPolygon.addPoint(380,110);

* filledPolygon.addPoint(450,90); g.drawPolygon(filledPolygon); }

*/

}

怎样用java编写图形界面的Application程序

java编写图形界面需要用到swing等组件,可以在eclipse中安装windowbuilder来开发窗体,自动生成窗体代码,然后自己再根据需要修改,如:

package mainFrame;

import java.awt.EventQueue;

import java.awt.event.MouseAdapter;

import java.awt.event.MouseEvent;

import javax.swing.ImageIcon;

import javax.swing.JButton;

import javax.swing.JCheckBox;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JPanel;

import javax.swing.JPasswordField;

import javax.swing.JTextField;

import javax.swing.SwingConstants;

import javax.swing.UIManager;

import javax.swing.UnsupportedLookAndFeelException;

import javax.swing.border.EmptyBorder;

public class Mian_login extends JFrame {

private JPanel contentPane;

private JTextField text_LoginName;

private JPasswordField Login_password;

/**

* Launch the application.

*/

public static void main(String[] args) {

EventQueue.invokeLater(new Runnable() {

@Override

public void run() {

try {

Mian_login frame = new Mian_login();

frame.setVisible(true);

} catch (Exception e) {

e.printStackTrace();

}

}

});

}

/**

* Create the frame.

*/

public Mian_login() {

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

setBounds(500, 200, 443, 300);

setResizable(false);

setTitle("登 录");

/*获取系统按钮样式*/

String lookAndFeel = UIManager.getSystemLookAndFeelClassName();

try {

UIManager.setLookAndFeel(lookAndFeel);

} catch (ClassNotFoundException e1) {

e1.printStackTrace();

} catch (InstantiationException e1) {

e1.printStackTrace();

} catch (IllegalAccessException e1) {

e1.printStackTrace();

} catch (UnsupportedLookAndFeelException e1) {

e1.printStackTrace();

}

contentPane = new JPanel();

contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));

setContentPane(contentPane);

contentPane.setLayout(null);

JPanel panel = new JPanel();

panel.setOpaque(false);

panel.setBounds(0, 0, 434, 272);

contentPane.add(panel);

panel.setLayout(null);

JButton btn_Login = new JButton("\u767B\u5F55");

btn_Login.addMouseListener(new MouseAdapter() {

@Override

public void mouseClicked(MouseEvent e) {

}

});

btn_Login.setBounds(88, 195, 70, 23);

panel.add(btn_Login);

JButton btn_cancel = new JButton("\u53D6\u6D88");

btn_cancel.addMouseListener(new MouseAdapter() {

@Override

public void mouseClicked(MouseEvent e) {

dispose();

}

});

btn_cancel.setBounds(268, 195, 70, 23);

panel.add(btn_cancel);

JLabel lblNewLabel_name = new JLabel("\u7528\u6237\u540D");

lblNewLabel_name.setHorizontalAlignment(SwingConstants.CENTER);

lblNewLabel_name.setOpaque(true);

lblNewLabel_name.setBounds(88, 48, 70, 23);

panel.add(lblNewLabel_name);

JLabel lblNewLabel_passwd = new JLabel("\u5BC6\u7801");

lblNewLabel_passwd.setHorizontalAlignment(SwingConstants.CENTER);

lblNewLabel_passwd.setOpaque(true);

lblNewLabel_passwd.setBounds(88, 102, 70, 23);

panel.add(lblNewLabel_passwd);

JCheckBox chckbx_remember = new JCheckBox("\u8BB0\u4F4F\u5BC6\u7801");

chckbx_remember.setBounds(102, 150, 84, 23);

panel.add(chckbx_remember);

text_LoginName = new JTextField();

text_LoginName.setBounds(182, 48, 156, 23);

panel.add(text_LoginName);

text_LoginName.setColumns(10);

Login_password = new JPasswordField();

Login_password.setBounds(182, 102, 156, 23);

panel.add(Login_password);

JCheckBox chckbx_AutoLogin = new JCheckBox("\u81EA\u52A8\u767B\u5F55");

chckbx_AutoLogin.setBounds(233, 150, 84, 23);

panel.add(chckbx_AutoLogin);

JLabel Label_background = new JLabel("");

Label_background.setIcon(new ImageIcon("E:\\JAVA_workplace\\0002-\u754C\u9762\u8BBE\u8BA1\\images\\background3.jpg"));

Label_background.setBounds(0, 0, 437, 272);

contentPane.add(Label_background);

}

}

Java编写一个图形界面

我觉得还是我的好些。。。

import java.awt.BorderLayout;

import java.awt.Color;

import java.awt.FlowLayout;

import java.awt.GridLayout;

import java.awt.Toolkit;

import java.awt.event.MouseAdapter;

import java.awt.event.MouseEvent;

import java.io.FileOutputStream;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JOptionPane;

import javax.swing.JPanel;

import javax.swing.JTextField;

import javax.swing.SwingConstants;

public class TestSwing extends JFrame{

private JLabel label1, label2, label3, label4,label5,label6,label7;

private JPanel panel,panel1,panel2;

private JTextField tField1,tField2,tField3,tField4,tField5,tField6,tField7,tField8,tField9;

private JButton button;

private String filepath="c:\\info.dat";

public TestSwing(){

init();

this.setSize(300, 280);

this.setLocation(

(Toolkit.getDefaultToolkit().getScreenSize().width - this

.getSize().width) / 2,

(Toolkit.getDefaultToolkit().getScreenSize().height - this

.getSize().height) / 2);

this.setResizable(false);

this.setVisible(true);

this.setTitle("info");

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

public void init(){

initPanel();

initLabel();

initTextField();

initButton();

initContent();

}

private void initContent(){

panel1.add(label1);

panel1.add(tField1);

panel1.add(label2);

panel1.add(tField2);

panel1.add(label3);

panel1.add(tField3);

panel1.add(label4);

panel1.add(tField4);

panel1.add(label5);

panel1.add(tField5);

panel1.add(label6);

panel1.add(tField6);

panel1.add(label7);

panel1.add(tField7);

panel1.add(tField8);

panel1.add(tField9);

panel2.add(button);

panel.add(panel1,BorderLayout.CENTER);

panel.add(panel2,BorderLayout.SOUTH);

getContentPane().add(panel);

}

private void initPanel(){

panel = new JPanel();

panel.setLayout(new FlowLayout());

panel.setBackground(Color.WHITE);

panel1 = new JPanel();

GridLayout upLayout = new GridLayout(8, 2);

panel1.setLayout(upLayout);

panel2 = new JPanel();

panel2.setLayout(new FlowLayout());

}

private void initLabel(){

label1 = new JLabel("IP地址", SwingConstants.LEFT);

label2 = new JLabel("端口", SwingConstants.LEFT);

label3 = new JLabel("访问地址", SwingConstants.LEFT);

label4 = new JLabel("XXXXX", SwingConstants.LEFT);

label5 = new JLabel("XXXXX", SwingConstants.LEFT);

label6 = new JLabel("XXXXX", SwingConstants.LEFT);

label7 = new JLabel("XXXXX", SwingConstants.LEFT);

}

private void initTextField(){

tField1 = new JTextField(10);

tField2 = new JTextField(10);

tField3 = new JTextField(10);

tField4 = new JTextField(10);

tField5 = new JTextField(10);

tField6 = new JTextField(10);

tField7 = new JTextField(10);

tField8 = new JTextField(10);

tField9 = new JTextField(10);

}

private void initButton(){

button = new JButton("完成");

button.addMouseListener(new MouseAdapter(){

//左键点击

public void mouseClicked(MouseEvent e) {

String ipv = tField1.getText().trim();

String portv = tField2.getText().trim();

String addrv = tField3.getText().trim();

String xx1v = tField4.getText().trim();

String xx2v = tField5.getText().trim();

String xx3v = tField6.getText().trim();

String xx4v = tField7.getText().trim();

String inputx = tField8.getText().trim();

String inputxv = tField9.getText().trim();

createFile(ipv, portv, addrv, xx1v, xx2v, xx3v, xx4v, inputx, inputxv);

JOptionPane.showMessageDialog(null, "保存成功");

tField1.setText("");

tField2.setText("");

tField3.setText("");

tField4.setText("");

tField5.setText("");

tField6.setText("");

tField7.setText("");

tField8.setText("");

tField9.setText("");

}

});

}

public static void main(String[]args){

new TestSwing();

}

private void createFile(String ipv,String portv ,String addrv,String xx1v,String xx2v,String xx3v,String xx4v,String inputx,String inputxv){

StringBuffer context = new StringBuffer();

context.append("ip=").append(ipv).append("\n");

context.append("port=").append(portv).append("\n");

context.append("addr=").append(addrv).append("\n");

context.append("xx1=").append(xx1v).append("\n");

context.append("xx2=").append(xx2v).append("\n");

context.append("xx3=").append(xx3v).append("\n");

context.append("xx4=").append(xx4v).append("\n");

context.append(inputx).append("=").append(inputxv).append("");

FileOutputStream fos = null;

try {

fos = new FileOutputStream(filepath);

fos.write(context.toString().getBytes());

} catch (Exception e) {

} finally {

if (fos != null)

try {

fos.close();

} catch (Exception e) {

}

}

}

}

java 如何在图形界面显示程序运行结果

如果只是一些文本要显示,可以在上面加个JTextArea,JTextField之类的组件,用这些组件的对象调用setText("           ")方法(括号里是字符串)来显示文本

比如:

import java.awt.FlowLayout;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.util.HashMap;

import java.util.Map;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JScrollPane;

import javax.swing.JTextArea;

/** 文本区域

*

* @author Administrator

*

*/

public class TextArea extends JFrame {

private static final long serialVersionUID = 2306597749734227012L;

private JButton b1 = new JButton("Add Data"), b2 = new JButton("Clear Data");

private JTextArea text = new JTextArea(20, 40);

private MapString, String map =

new HashMapString, String();

public TextArea() {

// Use up all the data:

map.put("a", "1");

map.put("b", "2");

b1.addActionListener(new ActionListener() {

@Override

public void actionPerformed(ActionEvent e) {

// TODO Auto-generated method stub

for(@SuppressWarnings("rawtypes") Map.Entry me : map.entrySet()){

text.append(me.getKey()+": "+me.getValue()+"\n");

}

}

});

b2.addActionListener(new ActionListener() {

@Override

public void actionPerformed(ActionEvent e) {

// TODO Auto-generated method stub

text.setText("");

}

});

setLayout(new FlowLayout());

add(new JScrollPane(text));

add(b1);

add(b2);

}

/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

GUItools.SwingConsole.run(new TextArea(), 475, 475);

}

}

JTextField和这差不多,只不过是显示单行的。

如果要显示其他字体的,可以用HTML格式,如下:

import java.awt.FlowLayout;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JLabel;

/** Swing 组件上的HTML

*

* @author Administrator

*

*/

@SuppressWarnings("serial")

public class HTMLButton extends JFrame {

private JButton b = new JButton(

"htmlbfont size=+2"+

"centerHello!briPress me now!");

// 必须使文本以 "html" 标记开始。

public HTMLButton() {

// TODO Auto-generated constructor stub

b.addActionListener(new ActionListener() {

@Override

public void actionPerformed(ActionEvent e) {

// TODO Auto-generated method stub

add(new JLabel("html"+"ifont size=+4Kapow!"));

// Force a re-layout to include the new label:

validate();

}

});

setLayout(new FlowLayout());

add(b);

}

/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

GUItools.SwingConsole.run(new HTMLButton(), 200, 500);

}

}

JAVA图形化

别的不看了,这一段代码里面居然有很多问题:

1、JFrame里面不要添加JFrame!

2、mainf2.add(a[i][j])的时候,a[i][j]你初始化了吗?没有!这个程序肯定不会运行起来的!

3、mainf.show()和mainf.setVisible(true)效果是一样的,但是mainf.show()方法已经被废弃了。

4、MyPaint的构造方法呢?怎么没有写?对任何程序员来说,不写缺省的构造方法都是致命的!

5、JFrame需要通过设置一个JPanel来实现一个布局,而不是他本身就实现布局。JFrame有一个默认的Panel,用getContentPane可以获取。

6、JDK下有例子的源代码,看看他们是怎么写的,你这样写的问题简直太多了。

java图形化编程教程的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于图形化编程语言、java图形化编程教程的信息别忘了在本站进行查找喔。

The End

发布于:2022-11-22,除非注明,否则均为首码项目网原创文章,转载请注明出处。