<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
Dialog 是Window類的子類,是一個容器類,屬於特殊元件。對話方塊是可以獨立存在的頂級視窗,因此用法與普通視窗的用法幾乎完全—樣,但是使用對話方塊需要注意下面兩點∶
non-modal
)和 模式 (modal
)兩種,當某個模式對話方塊被開啟後,該模式對話方塊總是位於它的父視窗之上,在模式對話方塊被關閉之前,父視窗無法獲得焦點。API
效果展示
程式碼展示
import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; public class DialogDemo1 { public static void main(String[] args) { Frame frame = new Frame("這裡測試Dialog"); //建立對話方塊Dialog物件,一個模式的,一個非模式的 //主視窗不能操作 Dialog d1 = new Dialog(frame,"模式對話方塊",true); //主視窗和子視窗都能操作 Dialog d2 = new Dialog(frame,"非模式對話方塊",false); //通過setBounds方法設定Dialog的位置以及大小 d1.setBounds(20,30,300,200); d1.setBounds(20,30,300,200); //建立兩個按鈕 Button b1 = new Button("開啟模式對話方塊"); Button b2 = new Button("開啟非模式對話方塊"); //需要給這兩個按鈕新增點選後的行為 b1.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { d1.setVisible(true); } }); b2.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { d2.setVisible(true); } }); //把按鈕新增到frame中 frame.add(b1,BorderLayout.NORTH); frame.add(b2); //設定大小可見 frame.pack(); frame.setVisible(true); } }
注意:
效果展示
程式碼展示
public class DialogDemo2 { public static void main(String[] args) { Frame frame = new Frame("這裡測試Dialog"); //建立對話方塊Dialog物件,一個模式的,一個非模式的 Dialog d1 = new Dialog(frame,"模式對話方塊",true); //建立一個垂直的Box容器,把一個文字方塊和一個按鈕加入Box容器中 Box vBox = Box.createVerticalBox(); vBox.add(new TextField(20)); vBox.add(new Button("確認")); //把Box容器加到Dialog中 d1.add(vBox); //通過setBounds方法設定Dialog的位置以及大小 d1.setBounds(20,30,300,200); //建立一個按鈕 Button b1 = new Button("開啟模式對話方塊"); //需要給這兩個按鈕新增點選後的行為 b1.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { d1.setVisible(true); } }); //把按鈕新增到frame中 frame.add(b1,BorderLayout.NORTH); frame.pack(); frame.setVisible(true); } }
Dialog類還有一個子類:FileDialog,它代表一個檔案對話方塊,用於開啟或者儲存檔案,需要注意的是FileDialo:無法指定模態或者非模態,這是因為 FileDialog 依賴於執行平臺的實現,如果執行平臺的檔案對話方塊是模態的那麼 FileDialog 也是模態的;否則就是非模態的。
API
效果展示
程式碼展示
import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; public class FileDialogTest { public static void main(String[] args) { Frame frame = new Frame("這裡測試FileDialog"); //建立兩個FileDialog物件 FileDialog f1 = new FileDialog(frame,"選擇要開啟的檔案",FileDialog.LOAD); FileDialog f2 = new FileDialog(frame,"選擇要儲存的路徑",FileDialog.SAVE); //建立兩個按鈕 Button b1 = new Button("開啟檔案"); Button b2 = new Button("儲存檔案"); //給這兩個按鈕設定點選後的行為,獲取開啟或者儲存的路徑檔名 b1.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { f1.setVisible(true);//程式碼會阻塞到這裡 //獲取選擇的路徑和檔案 String directory = f1.getDirectory(); String file = f1.getFile(); System.out.println("開啟的檔案路徑為:"+directory); System.out.println("開啟的檔名稱為:"+file); } }); b2.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { f2.setVisible(true);//程式碼會阻塞到這裡 //獲取選擇的路徑和檔案 String directory = f2.getDirectory(); String file = f2.getFile(); System.out.println("儲存的檔案路徑為:"+directory); System.out.println("儲存的檔名稱為:"+file); } }); //把按鈕新增到Frame中 frame.add(b1,BorderLayout.NORTH); frame.add(b2); //設定大小,可見 frame.pack(); frame.setVisible(true); } }
注意:
本篇文章就到這裡了,希望能夠給你帶來幫助,也希望您能夠多多關注it145.com的更多內容!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45