当前位置:首页 » 编程语言 » java图形编程

java图形编程

发布时间: 2022-07-07 19:58:28

1. 怎样用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.;

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 ( 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("u767Bu5F55");

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("u53D6u6D88");

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("u7528u6237u540D");

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("u5BC6u7801");

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("u8BB0u4F4Fu5BC6u7801");

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("u81EAu52A8u767Bu5F55");

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-u754Cu9762u8BBEu8BA1\images\background3.jpg"));

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

contentPane.add(Label_background);

}

}


2. java 图形界面编程 读取文件操作问题

我在你给的代码的基础上进行了你要求的功能的实现:
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.StringTokenizer;

import javax.swing.*;

class guiView extends JFrame implements ActionListener {
JButton shoutiao;
JButton motiao;
JButton xiatiao;
JButton shangtiao;
JLabel xuehao;
JLabel xingming;
JLabel xingbie;
JLabel shengri;
JLabel jiangxuejin;
JLabel jianli;
JTextField JT1;
JTextField JT2;
JTextField JT3;
JTextField JT4;
JTextField JT5;
JTextField JT6;

JFrame f;

int flag = 1; //用于标记当前行的位置
int sum = 0; //用户统计文件的总行数

public void init() {
f = new JFrame("学生信息浏览窗口");
JPanel j1 = new JPanel();
JPanel j2 = new JPanel();
JPanel j3 = new JPanel();
JPanel j4 = new JPanel();
JPanel j5 = new JPanel();
JPanel j6 = new JPanel();
JPanel j7 = new JPanel();
JPanel j8 = new JPanel();
JPanel j9 = new JPanel();
JPanel j10 = new JPanel();

FlowLayout flow = new FlowLayout();
j1.setLayout(flow);
j2.setLayout(flow);
j3.setLayout(flow);
j4.setLayout(flow);
j5.setLayout(flow);
j6.setLayout(flow);
j7.setLayout(flow);
j10.setLayout(flow);
f.getContentPane().setLayout(new BorderLayout());
j8.setLayout(new BorderLayout());
j9.setLayout(new BorderLayout());

shoutiao = new JButton("首条");
shoutiao.addActionListener(this);//每个按钮都添加事件监听器
shoutiao.setActionCommand("first");
motiao = new JButton("末条");
motiao.addActionListener(this);//每个按钮都添加事件监听器
motiao.setActionCommand("last");
xiatiao = new JButton("下条");
xiatiao.addActionListener(this);//每个按钮都添加事件监听器
xiatiao.setActionCommand("next");
shangtiao = new JButton("上条");
shangtiao.addActionListener(this);//每个按钮都添加事件监听器
shangtiao.setActionCommand("previous");

xuehao = new JLabel("学号 :");
xingming = new JLabel("姓名 :");
xingbie = new JLabel("性别 :");
shengri = new JLabel("生日 :");
jiangxuejin = new JLabel("奖学金:");
jianli = new JLabel("简历 :");
JT1 = new JTextField(12);
JT2 = new JTextField(12);
JT3 = new JTextField(12);
JT4 = new JTextField(12);
JT5 = new JTextField(12);
JT6 = new JTextField(12);

j1.add(xuehao);
j1.add(JT1);
j2.add(xingming);
j2.add(JT2);
j3.add(xingbie);
j3.add(JT3);
j4.add(shengri);
j4.add(JT4);
j5.add(jiangxuejin);
j5.add(JT5);
j6.add(jianli);
j6.add(JT6);
j7.add(shoutiao);
j7.add(shangtiao);
j7.add(xiatiao);
j7.add(motiao);
j8.add("North", j1);
j8.add("Center", j2);
j8.add("South", j3);
j9.add("North", j4);
j9.add("Center", j5);
j9.add("South", j6);
j10.add(j8);
j10.add(j9);
f.getContentPane().add("Center", j10);
f.getContentPane().add("South", j7);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setSize(500, 200);
f.setVisible(true);

getData();//初始化显示文件的第一行
}

//对点击首行,上一行,下一行,最后一行按钮触发的操作进行事件响应处理
public void actionPerformed(ActionEvent e) {
String event = e.getActionCommand();
if (event.equals("first")) {
flag = 1;
getData();
} else if (event.equals("last")) {
flag = sum;
getData();
} else if (event.equals("next")) {
if(flag<sum){
flag++;
};// 考虑读到文件末尾的情况,再选择下一条仍是最后一条
getData();
} else if (event.equals("previous")) {
if (flag > 1) {
flag--;
}// 考虑读到文件第一行的情况,再选择上一条仍是第一条
getData();
} else {
System.err.println("error!");
System.exit(-1);
}
}

//通过flag标记当前读到了文件的第几行。然后循环读至该行
public void getData() {
File file = new File("F:/java/data.txt");
String str=null;
StringTokenizer st;
BufferedReader br = null;
try {
br = new BufferedReader(new FileReader(file));
for(int i=0;i<flag;i++){
str = br.readLine();
}
if (str == null) {
System.err.println("no data!");
} else {
st = new StringTokenizer(str);//每行信息的6个字段分别用空格隔开的
this.JT1.setText(st.nextToken());
this.JT2.setText(st.nextToken());
this.JT3.setText(st.nextToken());
this.JT4.setText(st.nextToken());
this.JT5.setText(st.nextToken());
this.JT6.setText(st.nextToken());
}
br.close();//一定要关闭资源
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
//统计文件总共有多少行,方便判断是否已到达文件末尾,统计的行数放在sum里面
public void countLines() {
File file = new File("F:/java/data.txt");
BufferedReader br = null;
try {
br = new BufferedReader(new FileReader(file));
while (br.readLine() != null) {
sum++;
}
br.close();//一定要关闭资源
} catch (Exception e) {
e.printStackTrace();
}
}

public static void main(String[] s) {
guiView c = new guiView();
c.countLines();//统计文件行数
c.init();
}

}

3. java看图编程

import java.awt.Button;
import java.awt.FlowLayout;
import java.awt.Label;
import java.awt.TextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.awt.*;

import javax.swing.JOptionPane;

public class sumNo extends Frame {
Button b = new Button("求和");
Label l1 = new Label("数学");
Label l2 = new Label("英语");
Label l3 = new Label("总分");

int binary1, octal1, hex1;
int x, y;
TextField tf1 = new TextField(null, 10);
TextField tf2 = new TextField(null, 10);
TextField tf3 = new TextField(null, 10);

public sumNo() {
super("Sum");
setLayout(new FlowLayout(FlowLayout.LEFT));
add(l1);
add(tf1);
add(l2);
add(tf2);
add(l3);
add(tf3);

add(b);
pack();
setVisible(true);

addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
b.addActionListener(new ButtonListener());
}

class ButtonListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
if (tf1.getText() != null) {
try {
x = Integer.parseInt(tf1.getText());
y = Integer.parseInt(tf2.getText());
tf3.setText("" + (x+y));

} catch (NumberFormatException ex) {
JOptionPane.showMessageDialog(l1,
"You input is not a int, please input a int");

}

}

}
}

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

4. java图形界面编程

执行java Applt小程序不是这样运行的。你必须建一个html文件,然后在输入
<applet code="ButtonDemo.class"
width=320 height=180>
</applet>
其中code是你编译ButtonDemo类是生成的class文件。然后在cmd中找到html文件所在的路径下输入appletviewer xxx.html
就可以运行了

5. java图形界面编程软件哪个好

NetBeans,集成了图形开发面板,直接拖动就可以实现界面的布局

6. 简述Java图形用户界面编程的基本思想

简单地说就是把图形界面的组件当做积木来看待,然后再一个容器面板上堆积起来。最后设置各个组件的具体属性。

7. java图形界面设计编程:输出任意数以内的素数

按照你的要求编写的输出任意数以内的素数的图形界面的Java程序如下

importjava.awt.BorderLayout;
importjava.awt.FlowLayout;
importjava.awt.event.ActionEvent;
importjava.awt.event.ActionListener;
importjavax.swing.JButton;
importjavax.swing.JFrame;
importjavax.swing.JLabel;
importjavax.swing.JOptionPane;
importjavax.swing.JPanel;
importjavax.swing.JScrollPane;
importjavax.swing.JTextArea;
importjavax.swing.JTextField;
{
JLabeljl1=newJLabel("请输入一个正整数");
JLabeljl2=newJLabel("以内的素数");
JTextFieldjtf=newJTextField(5);
JButtonjb=newJButton("确定");
JTextAreajta=newJTextArea(5,3);
JScrollPanejsp=newJScrollPane(jta);
JPaneljp1=newJPanel();
JPaneljp2=newJPanel();
BB(){
super("求素数");
jb.addActionListener(this);
jp1.setLayout(newFlowLayout(FlowLayout.LEFT));
jp1.add(jl1);jp1.add(jtf);jp1.add(jb);
jp2.setLayout(newBorderLayout());
jp2.add(jl2,BorderLayout.NORTH);
jp2.add(jsp,BorderLayout.CENTER);
add(jp1,BorderLayout.NORTH);
add(jp2,BorderLayout.CENTER);
setSize(300,300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
setVisible(true);
}
@Override
publicvoidactionPerformed(ActionEventae){
if(ae.getSource()==jb){
try{
jta.setText("");
intn=Integer.parseInt(jtf.getText().trim());
jl2.setText(n+"以内的素数");
intcount=0;
for(inti=2;i<=n;i++){
booleanflag=true;
for(intj=2;j<i;j++){
if(i%j==0){
flag=false;
break;
}
}
if(flag==true){
count++;
jta.append(i+"");
if(count%5==0)
jta.append(" ");
}
}
}catch(NumberFormatExceptionnfe){
JOptionPane.showMessageDialog(this,"请输入一个正整数!");
jtf.setText("");
jtf.requestFocus();
}
}
}
publicstaticvoidmain(String[]args){
newBB();
}
}

运行结果

热点内容
滑板鞋脚本视频 发布:2025-02-02 09:48:54 浏览:433
群晖怎么玩安卓模拟器 发布:2025-02-02 09:45:23 浏览:557
三星安卓12彩蛋怎么玩 发布:2025-02-02 09:44:39 浏览:743
电脑显示连接服务器错误 发布:2025-02-02 09:24:10 浏览:537
瑞芯微开发板编译 发布:2025-02-02 09:22:54 浏览:147
linux虚拟机用gcc编译时显示错误 发布:2025-02-02 09:14:01 浏览:240
java驼峰 发布:2025-02-02 09:13:26 浏览:652
魔兽脚本怎么用 发布:2025-02-02 09:10:28 浏览:538
linuxadobe 发布:2025-02-02 09:09:43 浏览:212
sql2000数据库连接 发布:2025-02-02 09:09:43 浏览:726