Lập trình giao diện đồ họa - Chương 2

Nắm được các khái niệm hộp thoại, menu, canvas, panel.

Biết cách khai thác các thành phần trên trong chương trình Java

Nắm vững cách viết một chương trình đồ họa

 

ppt25 trang | Chia sẻ: Mr Hưng | Lượt xem: 948 | Lượt tải: 0download
Bạn đang xem trước 20 trang nội dung tài liệu Lập trình giao diện đồ họa - Chương 2, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
GV : Nguyễn Phúc Hảo *Lập trình giao diện đồ họaChương 2(tt)‏GV : Nguyễn Phúc Hảo *Mục tiêu bài họcNắm được các khái niệm hộp thoại, menu, canvas, panel.Biết cách khai thác các thành phần trên trong chương trình JavaNắm vững cách viết một chương trình đồ họaGV : Nguyễn Phúc Hảo *Hộp thoại ?GV : Nguyễn Phúc Hảo *Hộp thoại ?GV : Nguyễn Phúc Hảo *Hộp thoại ?GV : Nguyễn Phúc Hảo *Hộp thoại ?GV : Nguyễn Phúc Hảo *Hộp thoại trong awtDialog d = new Dialog(Frame f, String title) Dialog d = new Dialog(Frame f, String title,int chedochuyen)‏Có các hàm như : + setVisible(boolean b) =>Hiện Dialog + dispose() =>Hủy Dialog GV : Nguyễn Phúc Hảo *Hộp thoại tập tin trong gói awtTạo đối tượng tập tin FileDialog frame = new FileDialog(Frame f, String title, int mode); FileDialog frame = new FileDialog(Frame f, String title); // mode : FileDialog.LOAD | FileDialog.SAVE dùng để đọc và ghi nội dung GV : Nguyễn Phúc Hảo *Hộp thoại tập tin trong gói awt( tt)‏Các thuộc tính cơ bản trong đối tượng tập tin + setFile(String dangtaptin) => Xác định dạng tập tin có thể hiển thị Ví dụ : dangtaptin = "*.java" + setDirectory(String thumuc) => Chỉ định thư mục + setLocation(int x,int y) => Vị trí hiển thị + setVisible(boolean b) => Hiện ẩn + getFile() => Trả về tên tập tin được chọnGV : Nguyễn Phúc Hảo *Hộp thoại tập tin trong gói awt( tt)‏Ví dụ : public class UseFileDialog { public String loadFile (Frame f, String title, String defDir, String fileType) { FileDialog fd = new FileDialog(f, title, FileDialog.LOAD); fd.setFile(fileType); fd.setDirectory(defDir); fd.setLocation(50, 50); fd.show(); return fd.getFile(); }GV : Nguyễn Phúc Hảo *Hộp thoại tập tin trong gói awt( tt)‏public String saveFile (Frame f, String title, String defDir, String fileType) { FileDialog fd = new FileDialog(f, title,FileDialog.SAVE); fd.setFile(fileType); fd.setDirectory(defDir); fd.setLocation(50, 50); fd.show(); return fd.getFile(); }GV : Nguyễn Phúc Hảo *Hộp thoại tập tin trong gói awt( tt)‏public static void main(String s[]) { UseFileDialog ufd = new UseFileDialog(); System.out.println ("Loading : " + ufd.loadFile(new Frame(), "Open...", ".\\", "*.java")); System.out.println ("Saving : " + ufd.saveFile(new Frame(), "Save...", ".\\", "*.java")); System.exit(0); } }GV : Nguyễn Phúc Hảo *Hộp thoại thông báo trong gói swingCách dùng : JoptionPane.showMessageDialog( Frame f,String thbao, String tde , JOptionPane.ERROR_MESSAGE); /*new JoptionPane(String thbao, JOptionPane.QUESTION_MESSAGE, JOptionPane.YES_NO_CANCEL_OPTION) */ f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.setVisible(true);GV : Nguyễn Phúc Hảo *Hộp thoại thông báo trong gói swing(tt)‏Các phương thức cơ bản trong lớp JoptionPane void showMessageDialog(Component pCpn, Object message, String title, int messageType) String showInputDialog(Component pCpn, Object message, String title, int messageType) int showConfirmDialog(Component pCpn, Object message, String title, int optionType, int messageType) GV : Nguyễn Phúc Hảo *Hộp thoại thông báo trong gói swing(tt)‏Xác định độ rộng và cao của màn hình Toolkit kit = Toolkit.getDefaultToolkit(); Dimension screenSize = kit.getScreenSize(); int screenWidth = screenSize.width; int screenHeight = screenSize.height;GV : Nguyễn Phúc Hảo *Menu Là dạng điều khiển thông thường, và xuất hiện hầu hết trong các chương trình ứng dụng dưới nhiều dạng hình thức khác nhauMenu thường dùng để mô tả các tính năng chính của ứng dụng và các chức năng khác nếu cần GV : Nguyễn Phúc Hảo *Minh họaGV : Nguyễn Phúc Hảo *GV : Nguyễn Phúc Hảo *Xây dựng menu theo mô hình thanChúng ta cần tạo một đối tượng(biến) MenuBar và đưa vào trình chứa có hổ trợ MenuBarSau đó tiến hành thêm các thành phần đối tượng Menu vào đối tượng MenuBar ở trênNếu trong Menu bạn muốn có các mục chọn lựa thì bạn có thể chèn vào đó MenuItemCòn nếu muốn có Menu con thì cứ việc chèn Menu khác vào GV : Nguyễn Phúc Hảo *Ví dụ :Frame f = ....MenuBar menuBar=new MenuBar(); f.setMenuBar(menuBar); Menu file=new Menu("File"); menuBar.add(file); Menu edit=new Menu("Edit"); menuBar.add(edit); Menu help=new Menu("Help"); menuBar.setHelpMenu(help); GV : Nguyễn Phúc Hảo *Ví dụ :MenuItem newItem= new MenuItem("New"); file.add(newItem); MenuItem oItem = new MenuItem("Open"); file.add(openItem); MenuItem sItem = new MenuItem("Save"); file.add(saveItem); saveItem.setEnable(false); //phan code duoi them vao day file.addSeparator(); //phuong thuc nay dua mot hang phan cach vao menu File MenuItem eItem=new MenuItem("Exit"); file.add(exitItem);GV : Nguyễn Phúc Hảo *Ví dụ ://Tạo menu con : Menu print=new Menu("Setup Print"); file.add(print); MenuItem previewItem=new MenuItem("Preview"); print.add(previewItem); MenuItem printItem=new MenuItem("Print"); print.add(printItem); // Checkbox menu CheckboxMenuItem autosave=new CheckboxMenuItem("Auto Save"); file.add(autosave); GV : Nguyễn Phúc Hảo *CanvasThường dùng làm khung vẽĐể vẽ theo ý thích, người dùng thường viết lại các lệnh trong hàm paintKhởi tạo : Canvas c = new Canvas(){ public void pain(Graphics g){ g.fillRect(30,30,100,100); } } GV : Nguyễn Phúc Hảo *Canvas( tt)‏Các phương thức cơ bản : repaint() => Gọi lại hàm paint setVisible(boolean b) =>Hiện | ẩn setSize(int width,int height) => Kích thướcDùng : Đơn giản bỏ vào Frame bằng cách dùng CardLayoutGV : Nguyễn Phúc Hảo *Chúc các bạn học tập tốt

Các file đính kèm theo tài liệu này:

  • pptsession02_tttt__7771.ppt