freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

基于java的圖形用戶界面及其應用-在線瀏覽

2025-01-15 15:30本頁面
  

【正文】 提供一些輕量組件代替 AWT 中對應的重量組件。它們都是在 AWT 組件名前面加一個英文字母 J( J組件)。而 有擴展了 AWT 中的抽象類 ,是 Component 的替代組件類。這些從JComponent 抽象類繼承的組件類是一個實例,必須放置在象 JFrame, 等類的頂級容器中成為它們的子組件,而頂級容器 又是父容器。 (三) 布局管理器 實際編程中,每設計一個窗體,都要往其中添加若干組件。比如說,設計一個簡單的計算器,或一個文本編輯器等等。將加入到容器的組件按照一定的順序和規(guī)則放置,使之看起來更美觀,這就是布局。那么,在什么 時候應該使用布局管理器?應選擇哪種布局管理器?又該怎樣使用布局管理器呢? 如果寫的是 GUI 程序,在使用 AWT/Swing 組件時就不應硬性設置組件的大小和位置,而應該使用 Java 的布局管理器( LayoutManager)來設置和管理可視組件的大小和位置,否則就有可能造成布局混亂。 我們都知道, Java 的 GUI 界面定義是由 AWT 程序 包和 Swing 程序 包來完成的。也就是說,容器只管將其他組 件放入其中,而不管這些組件是如何放置的。 6 Java 中的容器類( Container),它們只管加入組件( Component),也就是說,它只使用自己的 add()方法向自己內部加入組件。然后 LayoutManager 類就可以通過這些信 息來實際布局其中的組件了。下面說明它們的布局特點: ? CardLayout 將組件象卡片一樣放置在容器中,在某一時刻只有一個組件可見 ? FlowLayout 將組件按從左到右而后從上到下的順序依次排列,一行不能放完則折到下一行繼續(xù)放置 ? GridLayout 形似一個無框線的表格,每個單元格中 放一個組件 BorderLayout 將組件按東、南、西、北、中五個區(qū)域放置,每個方向最多只能放置一個組件 ? GridBagLayout 非常靈活,可指定組件放置的具體位置及占用單元格數(shù)目 ? BoxLayout 就像整齊放置的一行或者一列盒子,每個盒子中一個組件 ? SpringLayout 根據(jù)一組約束條件放置子組件 ? ScrollPaneLayout 專用于 JScrollPane,含一個 Viewport,一個行頭、一個列頭、兩個滾動條和四個角組件 ? OverlayLayout 以彼此覆蓋的形式疊置組件 ? ViewportLayout JViewport 的默認布局管理器 對于布局管理器,我們僅以邊界布局器 BorderLayout 為例來說明它的應用。如圖 34 所示: North West Center East South 圖 34 邊界布局 例如: class MyPanel extends Jpanel {setLayout(new BorderLayout())。 } 先放置邊緣組件,然后剩余的可用空間由中間組件來占用。可以通過指定 BorderLayout 類中的 CENTER, NORTH, SOUTH, EAST, WEST 常量來添 加組件。 (四)事件處理 從概念上講,事件是一種在 源對象 和 監(jiān)聽者對象 之間,某種狀態(tài)發(fā)生變化的傳遞機制。在 Java中則是定義了一個普通的、可擴充的事件機制,這種機制能夠: (1)對事件類型和傳遞的模型的定義和擴充提供一個公共框架,并適合于廣泛的應用。 (3)事件能被描述環(huán)境捕獲和觸發(fā)。 (5)事件機制本身不依賴于復雜的開發(fā)工具。 對每個明確的事件的發(fā)生,都相應地定義一個明確的 Java方法。實現(xiàn)了事件監(jiān)聽者接口中一些或全部方法的類就是事件監(jiān)聽者。事件狀態(tài)對象作為單參傳遞給應響應該事件的監(jiān)聽者方法中。有時,事件監(jiān)聽者不能直接實現(xiàn)事件監(jiān)聽者接口,或者還有其它的額外動作時,就要在一個源與其它一個或多個監(jiān)聽者之間插入一個事件適配器類的實例,來建立它們之間的聯(lián)系。要實現(xiàn)這種機制要如下編程: (1)指定一個事件監(jiān)聽器,如框架,面板等組件所屬類以及它們的子類,且它們還必須是 ActionListener(動作監(jiān)聽器 )接口的實現(xiàn)類, (2)調用作為某種事件源,例如“動作( Action)”事件源的組件,像按鈕,文本域和組合框的所屬類提供的 addActionListener()方法,把作為“動作”事件監(jiān)聽器的一個對象添加給該事件源 一個事件源對象可以注冊多個事件監(jiān)聽器,因此該事件源對象所引發(fā)的事件可將消息發(fā)向所有被注冊的事件監(jiān)聽器。授權型事件模式就是把對所引發(fā)事件的處理任務全部授權給這些獨立的來進行處理 四 一個基于 JAVA 的圖形用戶界面實例的設計與實現(xiàn) (一)運行環(huán)境配置 本程序的運行環(huán)境是 ,安裝在 d 盤,其配置如下: ( 1) 如果你的操作系統(tǒng)是 Win 98,可以用記事本直接編輯 ,添加下面命令行: PATH=d:\\bin SET JAVA_HOME=d:\ SET CLASSPATH=.。d:\\lib\ 保存后,重新啟動計算機,這樣所添加的環(huán)境變量才會有效。右鍵單擊 我的電腦 ,在彈出菜單中選擇 屬性 → 系統(tǒng)特性 → 高級 → 環(huán)境變量 , 彈出環(huán)境變量對話框,就可以編輯系統(tǒng)的環(huán)境變量了。 (二)程序設計 本程序是建立在 JAVA 圖 形用戶界面上,運用了 AWT 和 Swing 中大量的類,包括按鈕,文本,菜單等部件類和框架,面板等容器類來說明 JAVA 中圖形界面的實現(xiàn)。如圖 41 所示:( windows2020 中的開始菜單) 圖 41 Windows2020系統(tǒng) 開始菜單 而在本程序中采用的框架方式來實現(xiàn),而不在是如上的菜單。為簡單起見,本應用程序僅實現(xiàn)其中部分功能,在“ proceduer”中,只包括 start(啟動), enclosure(附件),而在附件中,也只實現(xiàn) 計算器和計時器 功能。如下: text: ActionListener textListener=new ActionListener() {public void actionPerformed(ActionEvent e) {…}} establish ActionListener estListener=new ActionListener() 9 {public void actionPerformed(ActionEvent e) {… }} search ActionListener seaListener=new ActionListener() {public void actionPerformed(ActionEvent e) {… }} help ActionListener helpListener=new ActionListener() {public void actionPerformed(ActionEvent e) {… }} carryout ActionListener carryListener=new ActionListener() {public void actionPerformed(ActionEvent e) {… }} 對于上述方法,是采用 JAVA 中的匿名內部類進行。 JAVA 設計內部類的目標是為了比 C++簡單。內部類同 JAVA 中的訪問控制,以及安全性方面的交互也不明顯。如第一個監(jiān)聽器 text: ActionListener textListener=new ActionListener() {public void actionPerformed(ActionEvent e) {…}} 對于上面的匿名內部類,可以還原為普通的類: 先設一個 Object Ob, public class Ob implements ActionListener{…… } ActionListener textListener=Ob。其它的幾個匿名內部類都可以是和上面的方法一樣的。 在本界面中,主要是對 Swing 包中 Jmenu 菜單項和 JmenuItem 菜單子項的應用。當用戶用鼠標點擊菜單項或子項時,也會象用鼠標點擊按鈕一樣產(chǎn)生動作事件,變化事件。因為本程序是說明圖形界面的實現(xiàn),所以并未給出監(jiān)聽器的具體實現(xiàn)。對 start(啟動)也只給出空監(jiān)聽器,可以以后在實現(xiàn)起功能。 timeclock(計時器 )界面如下 10 圖 43 timeclock(計時器 )界面 在本界面中,是對圖形界面中很重要的一個類 Graphics 的應用,上圖中的鐘表完全是用 Graphics 類提供的函數(shù)所畫。為了實現(xiàn)此界面功能,就用到 JAVA中線程方面的接口,如 Runnable 接口,主要是對 run 方法的運用: public void run() { try{while(!interrupted()) {sleep(interval)。} } catch(InterruptedException e){} } 既當線程未被中斷,線程 sleep 有 interval 秒,然后執(zhí)行 ()方法,重新畫圖。對于重畫工作,是通過調用 paint()方法實現(xiàn),即用鐘面的顏色覆蓋掉原表針顏色。 else if(())arg=n。 else if((/))arg/=n。 (+arg)。 12 五 結束語 通過本次設計,成功實現(xiàn)了基于 JAVA 的圖形用戶界面。在 JAVA`````中,圖形用戶界面主要通過其 AWT 及 Swing 來實現(xiàn)。 本文由于時間關系,圖形界面比較簡單,只是 說明了 JAVA 中圖形用戶界面的基本實現(xiàn)過程以及相關技術,各種功能并不完全。 import .*。 import .*。 private JMenuItem textfile。 private JMenuItem search。 private JMenuItem carryout。 private JMenuItem start。 private JMenuItem circulate。 setTitle(windows2020)。 addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) {(0)。 JMenuBar mbar=new JMenuBar()。 procedure=new JMenu(procedure)。 start=new JMenuItem(start)。 circulate=new JMenuItem(circulate)。 establish=new JMenuItem(establish)。 help=new JMenuItem(help)。 14 JMe
點擊復制文檔內容
環(huán)評公示相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1