亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? tablebody.java

?? 打印管理程序,測試完全通過.windows開發環境.
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
            selectedRows.removeOverRowCount(model.getRowCount());
        } else {
            setBounds(rOld.x, 0, d.width, 0);
            selectedRows.removeAll();
        }
        
        if (backImage != null && 
        		(backImage.getHeight(this) != getSize().height || backImage.getWidth(this) != getSize().width)) {
	        invalidateBackImage();
        }
        invalidate();
        getParent().repaint();        

//        fireTableEvent(new TableEvent(this));
    }
    
    /** 
     * 楍暆偑曄峏偝傟偨偲偒偵屇傃弌偝傟傞丅 
     * 攚宨怓偑 
     */
    public void propertyChange(PropertyChangeEvent pce) {
        repaint();//
    }

    /** 埵抲偐傜峴斣崋傪庢摼 */
    public int rowAtPoint(Point pt) {
        int row = pt.y / rowHeight;
        if (row >= model.getRowCount()) {
            return (-1);
        }
        return row;
    }
    
    /** 埵抲偐傜楍斣崋傪庢摼 */
    public int columnAtPoint(Point pt) {
        int curWidth = 0;
        int[] widths = header.getWidths();
        for (int i = 0; i < model.getColumnCount(); i++) {
            if ((pt.x >= curWidth) && (pt.x < curWidth + widths[i])) {
                return i;
            }
            curWidth += widths[i];
        }
        return (-1);
    }
    
    /** 慖戰偝傟偰偄傞峴斣崋偺庢摼 */
    public int[] getSelectedRows() {
        return selectedRows.getSelectedRows();
    }
    
    public int getSelectedCount() {
    	return selectedRows.size();
    }
    
    public void clearSelectedRows() {
        selectedRows.removeAll(); 
        repaint();
        
        fireTableEvent(new TableEvent(this));
    }

    public void addTableEventListener(TableEventListener tel) {
        listeners.addElement(tel);
    }

    public void removeTableEventListener(TableEventListener tel) {
        listeners.removeElement(tel);
    }

    // 慖戰峴偑曄壔偟偨偲偒
    private void fireTableEvent(TableEvent te) {
        Vector v;
        synchronized(this) {
            v = (Vector)listeners.clone();
        }
        for (int i = 0; i < v.size(); i++) {
            TableEventListener tel = (TableEventListener)v.elementAt(i);
            tel.rowSelectionChanged(te);
        }
    }        

    public void processMouseEvent(MouseEvent me) {
        int id = me.getID();
        if (id == MouseEvent.MOUSE_CLICKED) {
            requestFocus();
            if (me.getX() < getSize().width) {
                if (AwtUtilities.isLeftMouseButton(me)) {
                    if (me.getClickCount() > 1) {
//                        Point pt = me.getPoint();
//                        int row = rowAtPoint(pt);
                        //fireMouseLeftButtonDoubleClicked(new TableEvent(getParent(), row));
                    }
                }
            }
        } else if (id == MouseEvent.MOUSE_PRESSED) {
            requestFocus();
            int pressedRow = rowAtPoint(me.getPoint());
            int pressedColumn = columnAtPoint(me.getPoint());
            if (pressedRow != -1 && pressedColumn != -1) {
	            //塃儃僞儞偺僋儕僢僋帪
	            if (AwtUtilities.isRightMouseButton(me)) {
	                Point pt = me.getPoint();
	                int row = rowAtPoint(pt);
//	                int column = columnAtPoint(pt);
	                if (row != -1) {
	//                    fireMouseRightButtonPressed(new TableEvent(this, row, column, vecRowText));
	                }
	            }
	            if (pressedRow < model.getRowCount()) {
	                //僨乕僞偑偁傞偲偙傠傪PRESS
	                if (me.isControlDown() && multiSelection && AwtUtilities.isLeftMouseButton(me)) {
	                    selectedRows.changeState(pressedRow);
	                    //fireTableEvent(new TableEvent(this));
	                } else if (me.isShiftDown() && multiSelection && AwtUtilities.isLeftMouseButton(me) && selectedRows.size() > 0) {
	                    int lastSelectedRow = selectedRows.getLastSelectedRow();
	                    if (lastSelectedRow >= 0) {
	                        if (lastSelectedRow < pressedRow) {
	                            for (int i = lastSelectedRow; i <= pressedRow; i++) {
	                                selectedRows.add(i);
	                            }
	                        } else {
	                            for (int i = lastSelectedRow; i >= pressedRow; i--) {
	                                selectedRows.add(i);
	                            }
	                        }
	                    } else {
	                        //僔僼僩僉乕偑墴偝傟偰偄傞偑丄嵟屻偵慖戰偝傟偨峴偑晄柧
	                        selectedRows.add(pressedRow);
	                    }
	                } else if (AwtUtilities.isRightMouseButton(me)) {
	                    if (selectedRows.include(pressedRow)) {
	                        //fireMouseRightButtonPressed(new TableEvent(getParent(), pressedRow));
	                    } else {
	                        selectedRows.set(pressedRow);
	                    }
	                } else {
	                    selectedRows.set(pressedRow);
	                }
	                //fireRowSelectionChanged(new TableEvent(this, pressedRow, pressedColumn, vecRowText));
	            } else {
	                //僨乕僞偺側偄偲偙傠側傜慖戰傪夝彍
	                selectedRows.removeAll();
	                //fireRowSelectionChanged(new TableEvent(this, -1, -1, vecRowText));
	            }
	            repaint();           

	            fireTableEvent(new TableEvent(this));        
			}
        }

        super.processMouseEvent(me);
    }
        
    class MyFocusListener implements FocusListener {
        public void focusGained(FocusEvent fe) {
            repaint();
        }
        public void focusLost(FocusEvent fe) {
            repaint();
        }
    }   
    
    public void processKeyEvent(KeyEvent ke) {
        if (ke.getID() == KeyEvent.KEY_PRESSED) {
            int row;
            switch (ke.getKeyCode()) {
            case KeyEvent.VK_UP:
                row = selectedRows.getLastSelectedRow();
                if (row < 0) {
                    return;
                } else if (row == 0) {
                    //selectedRows.set(row);
                } else {
                    selectedRows.set(--row);
                
//                    int parentHeight = getParent().getSize().height;
                    Point p = getLocation();
                    if (rowHeight * row < -p.y) {
                        setLocation(p.x,  -rowHeight * row);
                        invalidate();
                    }                
                }
                break;
            case KeyEvent.VK_DOWN:
                row = selectedRows.getLastSelectedRow();
                if (row < 0) {
                	return;
                } else if (row == model.getRowCount() - 1) {
                    //selectedRows.set(row);                    
                } else {
                    selectedRows.set(++row);
                
                    int parentHeight = getParent().getSize().height;
                    Point p = getLocation();
                    if (rowHeight * (row + 1) > -p.y + parentHeight) {
                        setLocation(p.x,  -(rowHeight * (row + 1) - parentHeight));
                        invalidate();
                    }
                }
                //fireRowSelectionChanged(new TableEvent(this, selectedRows[0], -1, vecRowText));
                break;
            case KeyEvent.VK_ENTER:
                if (selectedRows.size() == 1) {
                    //fireMouseLeftButtonDoubleClicked(new TableEvent(getParent(), selectedRows.getLastSelectedRow()));
                }
                return;
            case KeyEvent.VK_PAGE_UP:
                break;
            case KeyEvent.VK_PAGE_DOWN:
                break;
            case KeyEvent.VK_HOME:
                break;
            case KeyEvent.VK_END:
                break;
            default:
                return;
            }
            repaint();
 
            fireTableEvent(new TableEvent(this));        
        }
        
        super.processKeyEvent(ke);
    }    
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
fc2成人免费人成在线观看播放| 日韩欧美激情一区| 亚洲一区自拍偷拍| 欧美三级中文字幕| 精品一区二区三区欧美| 亚洲国产激情av| 欧美一区二区三区免费视频 | 国产成人精品免费| 亚洲一区在线观看免费观看电影高清| 久久久久久久久一| 国产人久久人人人人爽| 日本一区二区三区高清不卡| 欧美在线你懂得| 一区二区三区成人| 日韩一区二区在线观看视频播放| 久久成人久久爱| 中文av一区特黄| 欧美精品日韩一本| 国产成人综合视频| 亚洲成精国产精品女| 精品粉嫩超白一线天av| www.性欧美| 精品伊人久久久久7777人| 一色屋精品亚洲香蕉网站| 精品视频一区 二区 三区| 久久99精品久久久久久久久久久久| 中文字幕亚洲一区二区av在线| 日韩欧美资源站| 日本道色综合久久| 欧美最新大片在线看| 777xxx欧美| 日韩精品一区二区三区在线| 91麻豆精品国产91久久久资源速度 | 久久精品人人做| 国产婷婷一区二区| 亚洲视频在线一区二区| 一区二区三区四区不卡在线 | 免费在线欧美视频| 蜜桃精品视频在线| 国产v综合v亚洲欧| 99久久婷婷国产综合精品电影 | 欧美揉bbbbb揉bbbbb| 久久精品99国产精品日本| 蜜臀久久99精品久久久画质超高清| 色综合久久中文字幕| 一区二区三区中文在线| 91麻豆123| 日韩电影在线一区二区三区| www.日韩av| 91精品国产福利在线观看| 国产精品久久综合| 国产很黄免费观看久久| 91搞黄在线观看| 中文字幕国产一区二区| 日本欧美肥老太交大片| 欧美亚洲动漫制服丝袜| 国产日韩在线不卡| 老司机午夜精品99久久| 欧美色图12p| 亚洲专区一二三| 日本高清无吗v一区| 最新中文字幕一区二区三区| 国产成人aaa| 国产精品福利一区二区三区| 老司机免费视频一区二区| 8x福利精品第一导航| 日本人妖一区二区| 欧美一区二区三区视频免费| 亚洲美女视频在线观看| bt欧美亚洲午夜电影天堂| 久久精品无码一区二区三区| 国产成人av电影| 亚洲一区二区三区国产| 在线视频欧美区| 天天影视网天天综合色在线播放| 在线电影一区二区三区| 久久国产精品99久久久久久老狼| 日韩欧美国产一二三区| 国产精品一区二区三区四区| 中文无字幕一区二区三区| jiyouzz国产精品久久| 亚洲一区电影777| 日韩欧美国产午夜精品| 国产精品一区三区| 亚洲不卡在线观看| 久久久99久久| 欧美日韩在线不卡| 成人久久18免费网站麻豆 | 色香色香欲天天天影视综合网| 日韩不卡手机在线v区| 国产精品无圣光一区二区| 91精品久久久久久久99蜜桃| 色妞www精品视频| 成人听书哪个软件好| 国产乱国产乱300精品| 久久国产综合精品| 久久精品免费观看| 奇米色一区二区| 久久精品国产免费| 国产在线精品一区二区| 国产河南妇女毛片精品久久久 | 欧美一区二区三级| 久久影视一区二区| 欧美巨大另类极品videosbest| 一本大道久久a久久精二百| 国产成人免费视频网站 | 亚洲最大的成人av| 亚洲综合在线观看视频| 午夜久久久久久久久久一区二区| 日本欧美一区二区| 国产成+人+日韩+欧美+亚洲| 91在线视频播放| 欧美在线综合视频| 欧美mv日韩mv亚洲| 国产精品毛片大码女人| 亚洲成人1区2区| 国产精品一区三区| 精品视频一区二区三区免费| 久久久综合精品| 一区二区三区在线观看网站| 久久国产麻豆精品| 一本一本大道香蕉久在线精品| 欧美日韩国产另类不卡| 国产欧美一区二区精品仙草咪| 一区二区三区在线视频免费| 久久国产日韩欧美精品| 色综合色综合色综合色综合色综合| 日韩一区二区三区免费观看| 亚洲天堂精品视频| 精品一区二区免费| 欧洲精品视频在线观看| 国产欧美综合色| 日韩电影在线观看电影| 97se亚洲国产综合自在线不卡| 日韩一区二区免费高清| 亚洲一区二区三区四区不卡| 成人免费视频视频在线观看免费 | 亚洲天堂网中文字| 国产精品一区二区久久精品爱涩| 欧美日韩一区二区三区在线| 国产精品午夜免费| 国产在线精品一区二区三区不卡 | 日韩一级完整毛片| 一区二区三区欧美激情| 成人综合在线视频| 久久久久亚洲蜜桃| 免费精品视频在线| 在线不卡中文字幕| 洋洋av久久久久久久一区| 成人精品小蝌蚪| 国产偷v国产偷v亚洲高清| 狠狠色狠狠色综合系列| 日韩精品一区二| 日韩国产欧美视频| 欧美性生活久久| 亚洲欧美偷拍另类a∨色屁股| 亚洲综合小说图片| 一本大道久久a久久精二百| 国产精品久久久久久久久久免费看| 激情另类小说区图片区视频区| 欧美一区二区三区在线观看视频| 亚洲一区二区三区四区中文字幕| 97久久久精品综合88久久| 国产精品国产馆在线真实露脸| 国产精品主播直播| 欧美极品美女视频| 成人av一区二区三区| 亚洲欧洲日韩在线| 一本色道**综合亚洲精品蜜桃冫 | 亚洲一区中文在线| 欧美日韩一卡二卡| 亚洲高清视频在线| 欧美精品乱码久久久久久| 香蕉成人啪国产精品视频综合网| 欧美在线观看一二区| 亚洲成人免费在线观看| 欧美喷潮久久久xxxxx| 日韩成人精品在线| 亚洲精品在线免费观看视频| 国产精品亚洲视频| 亚洲丝袜自拍清纯另类| 一本色道综合亚洲| 无码av免费一区二区三区试看 | 国产精品国产精品国产专区不片 | 亚洲成a人v欧美综合天堂下载| 欧美日韩在线综合| 男人的天堂亚洲一区| 精品国产乱码久久久久久闺蜜| 国产一区免费电影| 国产精品第一页第二页第三页| 99视频超级精品| 亚洲成a人v欧美综合天堂下载| 日韩视频在线观看一区二区| 国产精品538一区二区在线| 国产精品初高中害羞小美女文| 欧洲一区二区三区在线| 黄色成人免费在线| 成人欧美一区二区三区黑人麻豆| 欧美在线色视频| 国产精品一区2区|