<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Rex Mao

    分享java技術與生活

    #

    java畫圖程序技術小結(二) 重繪與雙緩沖

    雙緩沖,我記得有兩種方法,一種是兩個圖象,一個前臺Graphics,一個后臺Graphics,畫圖時在后臺畫,畫好了,再用前臺的Graphics畫后臺Graphics的圖片。另一種是有兩個或多個圖象,不分前后臺,顯示一個圖象時,另外的在畫,圖象循環使用(c語言時用過)。
             給出第一種的java實現
             a、  定義后臺圖象BufferedImage offScreenImg=offScreenImg = new BufferedImage(this.maxX, this.maxY,
                                         BufferedImage.TYPE_INT_RGB);

             b、  得到后臺的Graphics實例

        Graphics2D offScreenG;

            offScreenG = offScreenImg.createGraphics();

             c、  覆蓋paintComponent方法

         public void paintComponent(Graphics g) {

              super.paintComponent(g);

            g.drawImage(offScreenImg, 0, 0, this.maxX, this.maxY, this);

              }

            繪制時用后臺Graphics,繪制好后,調用repaint(),將offScreenImg繪到面板上。


    posted @ 2007-04-23 21:47 Rex Mao 閱讀(4413) | 評論 (1)編輯 收藏

    java畫圖程序技術小結(一) 程序結構問題

             這個軟件是我大二時的圖形學課程設計,是個矢量圖形的繪制軟件。發來給初學者參考。
             主要功能:
             實現點、線段、折線、圓、橢圓、矩形、圓弧、多邊形、填充圖形、字符串等的定義和交互繪制。
             實現線型、線寬、顏色的選擇。
             實現畫布的定義及保存。


             程序結構:

    程序的主要功能均由類PaintPanel完成,該類繼承自JtextArea。(用它是為了實現畫布的大小調整的滾動條,以后介紹)

    PaintPanel中主要成員:

    ArrayList shape 保存當前畫布上的圖形對象

    ArrayList undo  保存用于撤消操作的圖形對象  

    Color bgCol    背景顏色

    BufferedImage offScreenImg   后臺圖象

    Graphics2D offScreenG       后臺Graphics對象

    Clipboard cb;   剪切板(由系統剪切板實例化)

       程序中定義接口:CusShape,主要有一些操作圖形的基本方法,比如,繪制,位置控制,顏色控制(具體可看代碼)
       其他圖形均繼承java.awt中的對應的類(主要是使用其中的交叉判斷函數intersects,用于圖形的鼠標選取),并實現Serializable,CusShape。
       圖形在程序中都以接口CusShape形式出現,以畫的圖形存儲在ArrayList中。

       我是通過這個軟件的設計才明白多態的,以前都是理論上的,經過實踐才知道面向對象的好處。這個軟件編寫的時候我對java還不是很了解,所以有的結構不是很合理,寫出來就是給初學者做個參考,看到有很多同學都在找畫圖板的設計,我會給出程序和簡單的設計文檔。

    posted @ 2007-04-23 10:11 Rex Mao 閱讀(3924) | 評論 (4)編輯 收藏

    轉移了一些圖片

             從以前的博客轉了一些圖片過來,以前的一些技術小結也要轉過來。

    posted @ 2007-04-23 09:42 Rex Mao 閱讀(234) | 評論 (0)編輯 收藏

    java名稱的由來-開篇

     剛開了這個博客,既然是java技術,我想以這個開篇還是合適的
             
             java名稱的來歷                                                                                                                          
             1995年初,Sun公司推出了新一代面向對象的程序設計語言,并將其命名為Java。關于Java這個名字的來歷有一段趣聞:有一天,幾位Java成員組的會員正在討論給這個新的語言取什么名字,當時他們正在咖啡館喝著Java(爪哇)咖啡,有一個人靈機一動說就叫Java怎樣,這個提議得到了其他人的贊同,于是,Java這個名字就這樣傳開了。
             關于java的咖啡圖標,我以為也可以有悠閑的意思,就是說使用java語言可以有更好的開發效率,給你更多悠閑的時間(喝咖啡)。還有一杯咖啡放在你的面前,你是不是有一種要把它端起來的沖動呢,其實就是讓你體驗java的沖動。
             在和室友小賴談論這個話題時,他說我們要是開發一種語言就叫guoba(鍋巴),呵呵.

    posted @ 2007-04-22 11:17 Rex Mao 閱讀(1631) | 評論 (2)編輯 收藏

    僅列出標題
    共2頁: 上一頁 1 2 
    主站蜘蛛池模板: 免费观看成人久久网免费观看| 亚洲AV福利天堂一区二区三| 免费三级毛片电影片| a级毛片免费观看在线| 亚洲欧美日韩久久精品| 亚洲视频免费观看| 国产亚洲精品a在线无码| 国产乱色精品成人免费视频| 免费a级毛片高清视频不卡| 在线观看免费av网站| 中文字幕av免费专区| 无码精品人妻一区二区三区免费| 亚洲性无码一区二区三区 | 毛片无码免费无码播放| 成人无码视频97免费| 一区二区免费电影| 美女黄色毛片免费看| 女bbbbxxxx另类亚洲| 亚洲精品无码少妇30P| 国产精品亚洲片在线va| 亚洲最大视频网站| 亚洲成年人免费网站| 亚洲精品国产啊女成拍色拍| 亚洲一区二区三区四区在线观看| 亚洲精品V欧洲精品V日韩精品| 国产亚洲精品不卡在线| 2022中文字字幕久亚洲| 国产精品亚洲产品一区二区三区 | 亚洲日韩中文字幕一区| 久久亚洲精品国产亚洲老地址 | 99国产精品免费视频观看| 免费国产成人α片| 久久精品电影免费动漫| 久久精品无码专区免费青青| 99在线观看免费视频| 国产男女爽爽爽爽爽免费视频| 成人免费大片免费观看网站| 国产99视频精品免费观看7| 女人被男人桶得好爽免费视频 | 黄色毛片免费观看| 国产成人无码免费网站|