日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

java之 22天 GUI 圖形界面編程(二)

系統 2027 0
模擬window開打文件
    

import java.awt.Button;
import java.awt.Dialog;
import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.Label;
import java.awt.TextArea;
import java.awt.TextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.File;

public class MyWinDemo {

	private Frame f;
	private TextField tf;
	private Button btn;
	private TextArea ta;
	private Dialog d;
	private Label lab;
	private Button okbtn;
	
	MyWinDemo(){
		init();
	}
	
	private void init(){
		f=new Frame("my Window");
		f.setBounds(300,100,600,500);
		f.setLayout(new FlowLayout());
		
		tf=new TextField(60);
		
		btn=new Button("轉到");
		ta=new TextArea(25,70);
		
		d=new Dialog(f,"提示信息-self",true);
		d.setBounds(400,200,250,150);
		d.setLayout(new FlowLayout());
		
		lab=new Label();
		okbtn=new Button("確定");
		
		d.add(lab);
		d.add(okbtn);
		
		
		f.add(tf);
		f.add(btn);
		f.add(ta);
		
		myEvent();
		f.setVisible(true);
		
	}
	
	
	private void myEvent() {
		
		//添加 回車 時候 自動轉到
		tf.addKeyListener(new KeyAdapter() {
			@Override
			public void keyPressed(KeyEvent e) {
				// TODO Auto-generated method stub
				if(e.getKeyCode()==KeyEvent.VK_ENTER){
					showDir();
				}
			}
		});
		//確定按鈕事件
		okbtn.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				// TODO Auto-generated method stub
				d.setVisible(false);
			}
		});
		
		d.addWindowListener(new WindowAdapter() {
			@Override
			public void windowClosing(WindowEvent e) {
				// TODO Auto-generated method stub
				d.setVisible(false);
			}
		
		});
		
		btn.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				showDir();
			}
			
		});
		
		
		f.addWindowListener(new WindowAdapter() {
			public void windowClosing(WindowEvent e){
				System.exit(0);
			}
			
		});
		
	}
	private void showDir() {
		String dirPath=tf.getText();
		
		File dir=new File(dirPath);
		if(dir.exists() && dir.isDirectory()){
			ta.setText("");
			String[] names=dir.list();
			for (String name : names) {
				ta.append(name+"\r\n");
				//ta.setText(text);
			}
		}else{
			String info="您輸入的信息:"+dirPath+"有誤,請重新輸入";
			lab.setText(info);
			d.setVisible(true);
		}
		
		tf.setText("");
	}
	public static void main(String[] args) {
		new MyWinDemo();
	}

}


  


模擬簡單記事本
    

import java.awt.FileDialog;
import java.awt.Frame;
import java.awt.Menu;
import java.awt.MenuBar;
import java.awt.MenuItem;
import java.awt.TextArea;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;

/**
 * 實現菜單欄
 */
public class MyMenuDemo {

	
	private Frame f;
	private MenuBar mb;
	private Menu m,subm;
	private MenuItem closeItem,openItem,saveItem,subItem1,subItem;
	private FileDialog openDialog,saveDialog;
	private TextArea ta;
	private File file;
	
	MyMenuDemo(){
		init();
	}
	
	private void init(){
		f=new Frame("my Window");
		f.setBounds(300,100,600,500);
		//f.setLayout();
		
		mb=new MenuBar();
		m=new Menu("文件");
		
		closeItem=new MenuItem("退出");
		openItem=new MenuItem("打開");
		saveItem=new MenuItem("保存");
		
		subm=new Menu("新建");
		subItem1=new MenuItem("Web Project");
		subItem=new MenuItem("Java Project");
		subm.add(subItem);
		subm.add(subItem1);
		
		m.add(subm);
		m.add(openItem);
		m.add(saveItem);
		m.add(closeItem);
		mb.add(m);
		
		openDialog=new FileDialog(f,"我要打開",FileDialog.LOAD);
		saveDialog=new FileDialog(f,"我要保存",FileDialog.SAVE);
		
		ta=new TextArea();
		
		f.add(ta);
		f.setMenuBar(mb);
		myEvent();
		
		f.setVisible(true);
		
	}
	
	private void myEvent() {
		
		saveItem.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				// TODO Auto-generated method stub
				if(file==null){
					saveDialog.setVisible(true);
					String dirPath=saveDialog.getDirectory();
					String fileName=saveDialog.getFile();
					if(dirPath==null || fileName==null)
						return;
					file=new File(dirPath,fileName);
				}
				try {
					
					BufferedWriter bufw=new BufferedWriter(new FileWriter(file));
					
					String text=ta.getText();
					
					bufw.write(text);
					bufw.close();
				} catch (IOException e2) {
					throw new RuntimeException("保存失敗");
				}
				
			}
		});
		
		//打開菜單
		openItem.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				// TODO Auto-generated method stub
				openDialog.setVisible(true);
				String dirPath=openDialog.getDirectory();
				String fileName=openDialog.getFile();
				System.out.println(dirPath+"...."+fileName);
				if(dirPath==null || fileName==null)
					return;
				ta.setText("");
				file=new File(dirPath,fileName);
				try {
					BufferedReader bufr=new BufferedReader(new FileReader(file));
					String line=null;
					while((line=bufr.readLine())!=null){
						ta.append(line+"\r\n");
					}
					bufr.close();
				} catch (IOException e2) {
					throw new RuntimeException("打開異常");
				}
				
			}
		});
		
		
		closeItem.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				// TODO Auto-generated method stub
				System.exit(0);
			}
		});
		
		f.addWindowListener(new WindowAdapter() {
			public void windowClosing(WindowEvent e){
				System.exit(0);
			}
			
		});
		
	}
	
	
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		new MyMenuDemo();
	}

}

  


jar -cvfm 1.txt com.mymenu
java之 22天 GUI 圖形界面編程(二)

java之 22天 GUI 圖形界面編程(二)


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 马边| 南雄市| 象州县| 安福县| 成都市| 织金县| 昂仁县| 广元市| 敖汉旗| 新乡市| 桦甸市| 荃湾区| 岳阳市| 沽源县| 叙永县| 陵川县| 进贤县| 于田县| 淄博市| 东城区| 古田县| 青神县| 九寨沟县| 铁岭县| 淮南市| 资兴市| 汕头市| 琼结县| 龙州县| 广东省| 泉州市| 黄梅县| 浠水县| 宁城县| 澄迈县| 珲春市| 敦化市| 河源市| 安远县| 孟村| 绵阳市|