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

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

?? listdataeventdemo.java

?? Java樣例程序集合:2D
?? JAVA
字號:
import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.event.*;import java.net.URL;public class ListDataEventDemo extends JApplet                                implements ListSelectionListener {    private JList list;    private DefaultListModel listModel;    private static final String addString = "Add";    private static final String deleteString = "Delete";    private static final String upString = "Move up";    private static final String downString = "Move down";    private JButton addButton;    private JButton deleteButton;    private JButton upButton;    private JButton downButton;    private JTextField nameField;    private JTextArea log;    static private String newline = "\n";    public void init() {        //Create and populate the list model.        listModel = new DefaultListModel();        listModel.addElement("Whistler, Canada");        listModel.addElement("Jackson Hole, Wyoming");        listModel.addElement("Squaw Valley, California");        listModel.addElement("Telluride, Colorado");        listModel.addElement("Taos, New Mexico");        listModel.addElement("Snowbird, Utah");        listModel.addElement("Chamonix, France");        listModel.addElement("Banff, Canada");        listModel.addElement("Arapahoe Basin, Colorado");        listModel.addElement("Kirkwood, California");        listModel.addElement("Sun Valley, Idaho");        listModel.addListDataListener(new MyListDataListener());        //Create the list and put it in a scroll pane.        list = new JList(listModel);        list.setSelectionMode(            ListSelectionModel.SINGLE_INTERVAL_SELECTION);        list.setSelectedIndex(0);        list.addListSelectionListener(this);        JScrollPane listScrollPane = new JScrollPane(list);        //Create the list modifying buttons.        addButton = new JButton(addString);        addButton.setActionCommand(addString);        addButton.addActionListener(new AddButtonListener());        deleteButton = new JButton(deleteString);        deleteButton.setActionCommand(deleteString);        deleteButton.addActionListener(            new DeleteButtonListener());        upButton = new JButton(            new ImageIcon(getURL("images/up.gif")));        upButton.setMargin(new Insets(0,0,0,0));        upButton.setActionCommand(upString);        upButton.addActionListener(new UpDownListener());        downButton = new JButton(            new ImageIcon(getURL("images/down.gif")));        downButton.setMargin(new Insets(0,0,0,0));        downButton.setActionCommand(downString);        downButton.addActionListener(new UpDownListener());        JPanel upDownPanel = new JPanel(new GridLayout(2, 1));        upDownPanel.add(upButton);        upDownPanel.add(downButton);        //Create the text field for entering new names.        nameField = new JTextField(15);        nameField.addActionListener(new AddButtonListener());        String name = listModel.getElementAt(list.getSelectedIndex())                               .toString();        nameField.setText(name);        //Create a control panel (uses the default FlowLayout).        JPanel buttonPane = new JPanel();        buttonPane.add(nameField);        buttonPane.add(addButton);        buttonPane.add(deleteButton);        buttonPane.add(upDownPanel);        //Create the log for reporting list data events.        log = new JTextArea(10, 20);        JScrollPane logScrollPane = new JScrollPane(log);        //Create a split pane for the log and the list.        JSplitPane splitPane = new JSplitPane(JSplitPane.VERTICAL_SPLIT,                                        listScrollPane, logScrollPane);        Container contentPane = getContentPane();        contentPane.add(buttonPane, BorderLayout.NORTH);        contentPane.add(splitPane, BorderLayout.CENTER);    }    class MyListDataListener implements ListDataListener {        public void contentsChanged(ListDataEvent e) {            log.append("contentsChanged: " + e.getIndex0() +                       ", " + e.getIndex1() + newline);         }        public void intervalAdded(ListDataEvent e) {            log.append("intervalAdded: " + e.getIndex0() +                       ", " + e.getIndex1() + newline);         }        public void intervalRemoved(ListDataEvent e) {            log.append("intervalRemoved: " + e.getIndex0() +                       ", " + e.getIndex1() + newline);         }    }    class DeleteButtonListener implements ActionListener {        public void actionPerformed(ActionEvent e) {            /*              * This method can be called only if             * there's a valid selection,             * so go ahead and remove whatever's selected.             */            ListSelectionModel lsm = list.getSelectionModel();            int firstSelected = lsm.getMinSelectionIndex();            int lastSelected = lsm.getMaxSelectionIndex();            listModel.removeRange(firstSelected, lastSelected);            int size = listModel.size();            if (size == 0) {            //List is empty: disable delete, up, and down buttons.                deleteButton.setEnabled(false);                upButton.setEnabled(false);                downButton.setEnabled(false);            } else {            //Adjust the selection.                if (firstSelected == listModel.getSize()) {                //Removed item in last position.                    firstSelected--;                }                list.setSelectedIndex(firstSelected);            }        }    }    /** A listener shared by the text field and add button. */    class AddButtonListener implements ActionListener {        public void actionPerformed(ActionEvent e) {            if (nameField.getText().equals("")) {            //User didn't type in a name...                Toolkit.getDefaultToolkit().beep();                return;            }            int index = list.getSelectedIndex();            int size = listModel.getSize();            //If no selection or if item in last position is selected,            //add the new one to end of list, and select new one.            if (index == -1 || (index+1 == size)) {                listModel.addElement(nameField.getText());                list.setSelectedIndex(size);            //Otherwise insert the new one after the current selection,            //and select new one.            } else {                listModel.insertElementAt(nameField.getText(), index+1);                list.setSelectedIndex(index+1);            }        }    }    //Listen for clicks on the up and down arrow buttons.    class UpDownListener implements ActionListener {        public void actionPerformed(ActionEvent e) {            //This method can be called only when            //there's a valid selection,            //so go ahead and move the list item.            int moveMe = list.getSelectedIndex();            if (e.getActionCommand().equals(upString)) {            //UP ARROW BUTTON                if (moveMe != 0) {                     //not already at top                    swap(moveMe, moveMe-1);                    list.setSelectedIndex(moveMe-1);                    list.ensureIndexIsVisible(moveMe-1);                }            } else {            //DOWN ARROW BUTTON                if (moveMe != listModel.getSize()-1) {                //not already at bottom                    swap(moveMe, moveMe+1);                    list.setSelectedIndex(moveMe+1);                    list.ensureIndexIsVisible(moveMe+1);                }            }        }    }    //Swap two elements in the list.    private void swap(int a, int b) {        Object aObject = listModel.getElementAt(a);        Object bObject = listModel.getElementAt(b);        listModel.set(a, bObject);        listModel.set(b, aObject);    }    //Listener method for list selection changes.    public void valueChanged(ListSelectionEvent e) {        if (e.getValueIsAdjusting() == false) {            if (list.getSelectedIndex() == -1) {            //No selection: disable delete, up, and down buttons.                deleteButton.setEnabled(false);                upButton.setEnabled(false);                downButton.setEnabled(false);                nameField.setText("");            } else if (list.getSelectedIndices().length > 1) {            //Multiple selection: disable up and down buttons.                deleteButton.setEnabled(true);                upButton.setEnabled(false);                downButton.setEnabled(false);            } else {            //Single selection: permit all operations.                deleteButton.setEnabled(true);                upButton.setEnabled(true);                downButton.setEnabled(true);                nameField.setText(list.getSelectedValue().toString());            }        }    }    protected URL getURL(String filename) {        URL codeBase = this.getCodeBase();        URL url = null;        try {            url = new URL(codeBase, filename);        } catch (java.net.MalformedURLException e) {            System.out.println("Couldn't create image: badly specified URL");            return null;        }        return url;    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产剧情一区在线| 日韩一级在线观看| 欧美日韩国产三级| 国产视频911| 婷婷国产在线综合| 9色porny自拍视频一区二区| 7777精品伊人久久久大香线蕉的 | 欧美一级日韩一级| 国产精品免费av| 免费看黄色91| 一本到三区不卡视频| 国产偷国产偷精品高清尤物| 午夜电影一区二区三区| 本田岬高潮一区二区三区| 精品少妇一区二区三区免费观看 | 久久精品国产一区二区| 91猫先生在线| 中文字幕一区二区视频| 黄页视频在线91| 欧美一区二区播放| 亚洲国产成人av网| 色先锋资源久久综合| 欧美激情一区二区三区| 韩国一区二区视频| 制服丝袜一区二区三区| 国产精品白丝jk黑袜喷水| 欧美一级视频精品观看| 日韩国产欧美在线播放| 欧美日韩久久久久久| 亚洲无人区一区| 色婷婷国产精品| 亚洲日本韩国一区| 色系网站成人免费| 亚洲精品久久7777| 色欧美乱欧美15图片| 亚洲美女淫视频| 日本道免费精品一区二区三区| 国产三级欧美三级日产三级99| 精品一区二区在线播放| 精品国产凹凸成av人网站| 看电视剧不卡顿的网站| 久久久久国产精品麻豆ai换脸| 毛片av中文字幕一区二区| 日韩一区二区中文字幕| 韩国欧美国产1区| 国产三级欧美三级日产三级99| 国产乱理伦片在线观看夜一区| 久久久久久久久久久99999| 国产精品亚洲第一| 亚洲品质自拍视频| 欧美日韩国产大片| 美洲天堂一区二卡三卡四卡视频| 精品国产伦理网| 成人午夜激情影院| 中文字幕在线不卡一区| 色婷婷综合久久久中文一区二区| 亚洲大型综合色站| 欧美成va人片在线观看| 丁香五精品蜜臀久久久久99网站 | 精品乱码亚洲一区二区不卡| 国产麻豆成人传媒免费观看| 中文欧美字幕免费| 欧美三级韩国三级日本一级| 奇米精品一区二区三区四区| 久久精品夜夜夜夜久久| 一本到不卡免费一区二区| 日韩电影免费在线看| 国产日韩欧美高清| 欧美日韩黄色一区二区| 国产精品一级黄| 亚洲尤物视频在线| 久久久精品人体av艺术| 欧美伊人久久大香线蕉综合69 | 成人免费视频在线观看| 制服丝袜亚洲精品中文字幕| 高清国产午夜精品久久久久久| 亚洲曰韩产成在线| 久久久一区二区三区捆绑**| 欧美影院一区二区| 国产99一区视频免费| 日产欧产美韩系列久久99| 中文字幕一区二区三区精华液| 欧美久久久影院| 99精品热视频| 黄一区二区三区| 偷拍一区二区三区| 成人免费小视频| 欧美成人性战久久| 欧美理论电影在线| 色系网站成人免费| caoporn国产精品| 国产精品一区二区久激情瑜伽| 亚洲一卡二卡三卡四卡| 国产精品高清亚洲| 久久久精品国产免费观看同学| 中文av字幕一区| 精品久久一区二区三区| 欧美视频一区在线| 91蝌蚪porny| 成人黄页在线观看| 国产精品正在播放| 精品一区二区三区久久| 日韩电影免费在线看| 亚洲资源在线观看| 亚洲欧美激情一区二区| 国产精品国产三级国产普通话三级| 日韩视频不卡中文| 日韩一区二区不卡| 欧美老肥妇做.爰bbww视频| 色综合中文字幕国产 | 欧美国产成人在线| 国产午夜精品一区二区三区视频 | 亚洲电影一区二区三区| 亚洲视频在线一区观看| 国产亚洲欧美一区在线观看| 精品国产免费视频| www欧美成人18+| 久久综合九色欧美综合狠狠| 日韩一级欧美一级| 日韩视频一区在线观看| 日韩视频免费观看高清完整版 | 久久综合资源网| 日韩视频免费直播| 精品剧情在线观看| 国产午夜精品在线观看| 国产精品污污网站在线观看| 国产精品你懂的在线| 国产精品久久久久天堂| 中文字幕永久在线不卡| 日韩一区中文字幕| 亚洲综合丝袜美腿| 日韩和欧美的一区| 久久aⅴ国产欧美74aaa| 国产精品中文字幕日韩精品 | 国产福利一区二区| av在线不卡免费看| 色av综合在线| 91精品国产福利| 久久婷婷综合激情| 国产精品灌醉下药二区| 亚洲国产成人av网| 精品亚洲porn| www.爱久久.com| 欧美日韩免费电影| 久久久久久久综合日本| 亚洲丝袜另类动漫二区| 水蜜桃久久夜色精品一区的特点 | 夜夜精品视频一区二区 | 成人免费高清视频| 色94色欧美sute亚洲13| 欧美浪妇xxxx高跟鞋交| 2014亚洲片线观看视频免费| 一区免费观看视频| 免费人成网站在线观看欧美高清| 国产成人一区二区精品非洲| 在线亚洲人成电影网站色www| 91精品午夜视频| 国产精品久久久久久久久免费丝袜 | 精品影视av免费| 99这里只有久久精品视频| 在线观看日韩精品| 久久久99久久| 亚洲成人免费看| 成人免费av在线| 91麻豆精品国产91| 亚洲人精品午夜| 久久精品国产**网站演员| 91在线视频免费91| 精品第一国产综合精品aⅴ| 有坂深雪av一区二区精品| 国内欧美视频一区二区| 欧美日韩亚洲不卡| 国产精品久久久久久久久动漫 | 久久66热re国产| 在线观看视频一区二区欧美日韩| 精品国内片67194| 亚洲最大的成人av| 成人激情av网| 午夜精品久久久久久久久| 成人免费毛片嘿嘿连载视频| 欧美电视剧免费全集观看| 亚洲一区二区欧美日韩| 不卡高清视频专区| 久久综合色之久久综合| 日本美女一区二区三区视频| 欧美专区日韩专区| 国产精品久久久久影院色老大| 国内精品久久久久影院色| 日韩一级黄色片| 日韩vs国产vs欧美| 欧美性三三影院| 玉米视频成人免费看| 色婷婷综合久久久久中文| 综合久久久久久| 99久久精品免费精品国产| 国产精品免费丝袜| youjizz久久| 国产精品不卡视频| av影院午夜一区| 亚洲欧洲在线观看av|