Java_swing_图形化界面实例应用
来源:互联网 发布:超市销售记录数据 编辑:程序博客网 时间:2024/05/18 16:56
关于传统awt应用>>
import java.awt.BorderLayout;import java.awt.FlowLayout;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 javax.swing.JButton;import javax.swing.JFileChooser;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.JScrollPane;import javax.swing.JTextArea;import javax.swing.filechooser.FileFilter;public class OpenFile {/** * @param args */public static void main(String[] args) {final JFrame f = new JFrame("测试");f.setVisible(true);/* * 关于布局有几种常见方法 * BorderLayout分为 南 北 东 西 中 * FlowLayout好比一段文字,组件为文字,一个个附加 * GridLayout * */f.setLayout(new BorderLayout());f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//关闭JPanel panel = new JPanel();panel.setLayout(new FlowLayout());JButton button = new JButton("打开文本");panel.add(button);JButton button1 = new JButton("保存文本");panel.add(button1);final JTextArea txt = new JTextArea(30, 40);final JLabel label = new JLabel();f.add(panel, BorderLayout.NORTH);f.add(new JScrollPane(txt), BorderLayout.CENTER);f.add(label, BorderLayout.SOUTH);f.setBounds(50, 50, 500, 500);button.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {JFileChooser file = new JFileChooser(".");//文件当期目录file.addChoosableFileFilter(new MyFilter("txt"));//过滤器int choose = file.showOpenDialog(f);if(choose == 0){File ff = file.getSelectedFile();try {BufferedReader bufr = new BufferedReader(new FileReader(ff));String temp = null;while((temp=bufr.readLine()) != null){txt.append(temp+"\r\n");}} catch (FileNotFoundException e1) {// TODO Auto-generated catch blocke1.printStackTrace();} catch (IOException e1) {// TODO Auto-generated catch blocke1.printStackTrace();}}}});}}class MyFilter extends FileFilter{String postfix;//后缀名MyFilter(String postfix) {this.postfix = postfix;}@Overridepublic boolean accept(File f) {//这个文件是否列出if(f.isDirectory())return true;String str = f.getName();int num = str.lastIndexOf('.');if(num >0){if(str.substring(num+1, str.length()).equals(postfix)){return true;}}return false;}@Overridepublic String getDescription() {//描叙return "*."+postfix+"文件";}}
import java.awt.Color;import java.awt.Font;import java.awt.Graphics;import java.awt.event.MouseAdapter;import java.awt.event.MouseEvent;import java.io.File;import java.util.ArrayList;import javax.swing.ImageIcon;import javax.swing.JFrame;import javax.swing.JPanel;import javax.swing.JScrollPane;import javax.swing.JTextArea;public class Test{public static void main(String[] args){new MyPanel();}}class MyPanel extends JPanel{private static JFrame f = new JFrame("test");private static ArrayList<Shape> al = new ArrayList<Shape>();MyPanel(){f.setVisible(true);f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);f.add(this);f.setBounds(50, 50, 500, 500);addMouseListener(new MouseAdapter() {Shape s = new Shape();public void mousePressed(MouseEvent e) {s.setPonit1(e.getX(), e.getY());}public void mouseReleased(MouseEvent e) {s.setPonit2(e.getX(), e.getY());al.add(s);repaint();}});}@Overridepublic void paint(Graphics g){//g.drawImage(new ImageIcon("/2.jpg").getImage(), 20, 20, 440, 1909, this); //画图片//g.setFont(new Font("楷体", 30, 30));//设置字体g.setColor(Color.red);//设置颜色//g.drawString("我爱你", 50, 50);//画字符串//g.drawLine(shape.getX1(), shape.getY1(), shape.getX2(), shape.getY2());//直线for(int i=0; i<al.size(); i++){Shape shape = al.get(i);g.drawOval(shape.getX1(), shape.getY1(), shape.getX2()-shape.getX1(), shape.getY2()-shape.getY1());//画椭圆}}}class Shape{private int x1 = 0;private int y1 = 0;private int x2 = 0;private int y2 = 0;private ShapeType type = ShapeType.line;public void setPonit1(int x1, int y1){this.x1 = x1;this.y1 = y1;}public void setPonit2(int x2, int y2){this.x2 = x2;this.y2 = y2;}public int getX1() {return x1;}public int getY1() {return y1;}public int getX2() {return x2;}public int getY2() {return y2;}}enum ShapeType{line,oval,polygon,rect,string;}
- Java_swing_图形化界面实例应用
- java:图形化界面awt基本实例
- 创建图形化界面
- GUI图形化界面
- 图形化界面复制
- GUI图形化界面
- 图形化界面总结
- 图形化界面编程
- 创建图形化界面
- 图形化界面
- 图形化界面知识点
- Java图形化界面
- 图形化界面
- Java图形化界面
- Java图形化界面
- 图形化界面计算器
- 图形化界面创建
- 聊天图形化界面
- 部分计算机代数系统对比Computer Algebra Software: Mathematica, Maxima, Pari/GP
- ListOper
- 使用Maxima求解常微分方程~
- Linux下Web目录和文件安全权限设置
- Maxima绘图基础
- Java_swing_图形化界面实例应用
- Erlang-- 学习笔记1,数据格式
- 编程竞赛和逻辑谜题网站大集合:
- PHP基本语法快速入门
- Sqlserver2008以windows方式验证java数据库链接解决方案
- 如何手动修改或增加word2007自动生成的目录的链接(修改域代码方式):
- Word出现很多灰色小点点和箭头的解决方法:
- HDU4022(二分法)
- word2007中word文件转化成PDF时中不让图片路径显示出来: