Java基礎(chǔ)入門(mén):Java GUI基礎(chǔ)教程

Java基礎(chǔ)入門(mén):Java GUI基礎(chǔ)教程

長(zhǎng)沙牛耳教育      2022-04-25 05:56:01     10

Java基礎(chǔ)入門(mén):Java GUI基礎(chǔ)教程,  一、JFrame  JAVASWING  導(dǎo)入包importjavax.swing.*  導(dǎo)入包importjava.awt.*  增加代碼:  EventQueue.invokeLat

課程價(jià)格 請(qǐng)咨詢

上課時(shí)段: 授課校區(qū):

詳細(xì)介紹



  一、Jframe


  JAVASWING


  導(dǎo)入包importjavax.swing.*


  導(dǎo)入包importjava.awt.*

  增加代碼:

  EventQueue.invokeLater()->{

  Jframeframe=newJframe("Welcome");

  frame.setSize(500,500);//設(shè)置寬高

  frame.setResizable(false);//不能改變大小

  frame.setDefaultCloseOperation(Jframe.EXIT_ON_CLOSE);//點(diǎn)擊關(guān)閉按鈕操作

  frame.setVisible(true);

  }


  解釋一下,因?yàn)閟wing是不安全單線程,所以官方推薦用EventQueue


  二、Jframe子類(lèi)



  三、畫(huà)布和圖形繪制基礎(chǔ)


  MenuBar和ContentPane(Container)


  要區(qū)分內(nèi)容面板和窗口大小。


  完善frame類(lèi)。


  保持內(nèi)容面板和窗口大小一致。


  用子類(lèi)方法,將Canvas與frame分開(kāi)。


  上面的canvas.setprefreredSize可以刪掉了,誰(shuí)的事誰(shuí)處理。

  四、Graphics2D繪制


  不友好,是Java歷史遺留問(wèn)題。


  五、整理繪制類(lèi)


  新建AlgoVisHelper類(lèi)

  Algoframe類(lèi)

  六、抗鋸齒和雙緩存


  知道概念,知道如何使用很重要

  七、動(dòng)畫(huà)基礎(chǔ)


  Algoframe類(lèi)完善


  


  Main類(lèi)


  

  需要加入線程,事件隊(duì)列只能處理較快的事件

  Circle類(lèi)碰撞檢測(cè)


  八、可視化MVC


  繼續(xù)優(yōu)化代碼,做好封裝。數(shù)據(jù)層Circle、視圖層Algoframe,控制層。


  新建AlgoVisualizer類(lèi)。

  九、鍵盤(pán)事件


  面向?qū)ο螅簩?shí)現(xiàn)一個(gè)接口,必須實(shí)現(xiàn)該接口的所有內(nèi)容。


  所以無(wú)法使用這種方式。

  JAV提供了一個(gè)方式。

  十、鼠標(biāo)事件


  注意frame和Canvans大小不同,我們?cè)趂rame中創(chuàng)建的鼠標(biāo)事件,獲取的位置是frame的。

  y要位移menubar的高度

  以上就是動(dòng)力Java培訓(xùn)機(jī)構(gòu)小編介紹的“Java基礎(chǔ)入門(mén):Java GUI基礎(chǔ)教程”的內(nèi)容,希望對(duì)大家有幫助,如有疑問(wèn),請(qǐng)?jiān)诰€咨詢,有專(zhuān)業(yè)老師隨時(shí)為你服務(wù)。



Java基礎(chǔ)教程

培訓(xùn)啦提醒您:交易時(shí)請(qǐng)核實(shí)對(duì)方資質(zhì),對(duì)于過(guò)大宣傳或承諾需謹(jǐn)慎!任何要求預(yù)付定金、匯款等方式均存在風(fēng)險(xiǎn),謹(jǐn)防上當(dāng)。