国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

JPanel加載圖像的過程

2019-11-18 11:29:00
字體:
來源:轉載
供稿:網友

  要在JPanel上顯示圖像,調用了哪幾個要害的類方法? 經過Debug,總結如下:

無論選擇按鈕或菜單來觸發事件,打開圖像文件

分別調用的方法依次是

按鈕或菜單的事件處理方法(ButtonOpen_mouseClicked())->
自定義的加載方法(loadMyImage()) ->
 Graphics對象的drawImage()->
JPanel的imageUpdate() ->
JPanel的repaint()

以下代碼僅是示例,不完全

void ButtonOpen_mouseClicked(MouseEvent e) {
         panel.loadChemImg(imageFile.getAbsolutePath());
}

public void loadMyImage(String s) {
        originalImage = Toolkit.getDefaultToolkit().getImage(s);      
             
        if (ibuff == null) {
            init_buff();
        }                   
        buffgra.drawImage(originalImage, 0, 0, this);       
        //這里會調用imageUpdate()   
    }

 public boolean imageUpdate(Image originalImage, int flags, int x, int y, int w, int h) {
        Color col;
               
        if (flags == ImageObserver.ALLBITS) {
            col = buffgra.getColor();
            buffgra.setColor(Color.white);
            buffgra.fillRect(0, 0, getWidth(), getHeight());
            buffgra.drawImage(originalImage, 0, 0, this);
            buffgra.setColor(col);               
               
            repaint();   
            //完全加載后返回false,防止再次調用           
            return false;
        }
        return true;      
    }

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 钦州市| 靖江市| 安国市| 临高县| 巴楚县| 象山县| 阿拉善左旗| 都安| 濮阳县| 兰西县| 屏南县| 于都县| 合川市| 屏东县| 肇州县| 察雅县| 双桥区| 石棉县| 杭州市| 屏山县| 萍乡市| 宁明县| 东至县| 龙海市| 自贡市| 肇东市| 周口市| 新兴县| 徐水县| 磴口县| 洮南市| 石楼县| 平利县| 舟曲县| 沅陵县| 运城市| 高要市| 隆林| 尚志市| 衡阳市| 墨江|