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

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

?? webbrowser.java

?? Java編寫的網頁瀏覽器
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
/*
**網頁瀏覽器主程序
**WebBrowser.java
*/
import java.awt.*; 
import javax.swing.*;
import javax.swing.text.*;
import java.awt.event.*; 
import javax.swing.event.*;
import javax.swing.border.*;
import javax.swing.filechooser.FileFilter; 
import javax.swing.filechooser.FileView; 
import java.io.*; 
import java.net.*; 
import java.util.*; 

public class WebBrowser extends JFrame implements HyperlinkListener,ActionListener{ 

    //建立工具欄用來顯示地址欄
    JToolBar bar=new JToolBar (); 
    
    //建立網頁顯示界面
    JTextField jurl = new JTextField (60); 
    JEditorPane jEditorPane1 = new JEditorPane ();
    JScrollPane scrollPane = new JScrollPane (jEditorPane1); 
    
    JFileChooser chooser=new JFileChooser (); 
    JFileChooser chooser1=new JFileChooser (); 
    String htmlSource; 
    JWindow window = new JWindow (WebBrowser.this); 
    
    JButton button2=new JButton ("窗口還原");
    Toolkit toolkit = Toolkit.getDefaultToolkit();
    
    //建立菜單欄
    JMenuBar jMenuBar1 = new JMenuBar(); 
    //建立菜單組
    JMenu fileMenu = new JMenu ("文件(F)"); 
    //建立菜單項
    JMenuItem saveAsItem = new JMenuItem ("另存為(A)...");
    JMenuItem exitItem=new JMenuItem ("退出(I)");
    
    JMenu editMenu=new JMenu ("編輯(E)");
    JMenuItem backItem=new JMenuItem ("后退");
    JMenuItem forwardItem=new JMenuItem ("前進");
    
    JMenu viewMenu=new JMenu ("視圖(V)");
    JMenuItem fullscreenItem=new JMenuItem ("全屏(U)"); 
    JMenuItem sourceItem=new JMenuItem ("查看源碼(C)");
    JMenuItem reloadItem=new JMenuItem ("刷新(R)");

    //建立工具欄
    JToolBar toolBar = new JToolBar();
    //建立工具欄中的按鈕組件
    JButton picSave = new JButton("另存為");
    JButton picBack = new JButton("后退");
    JButton picForward = new JButton("前進");
    JButton picView = new JButton("查看源代碼");
    JButton picExit = new JButton("退出");

    JLabel label=new JLabel ("地址"); 
    JButton button=new JButton ("轉向");
    
    Box adress=Box.createHorizontalBox ();    

    //ArrayList對象,用來存放歷史地址
    private ArrayList history=new ArrayList();
    //整型變量,表示歷史地址的訪問順序
    private int historyIndex; 

    /**
    **構造函數
    **初始化圖形用戶界面
    */
    public WebBrowser(){
        
        setTitle ("網頁瀏覽器"); 
        setResizable(false);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                    
        //為jEditorPane1添加事件偵聽
        jEditorPane1.addHyperlinkListener (this);
        
        //為組件fileMenu設置熱鍵‘F’
        fileMenu.setMnemonic('F'); 
        
        saveAsItem.setMnemonic ('S'); 
        //為“另存為”組件設置快捷鍵為ctrl+s
        saveAsItem.setAccelerator (KeyStroke.getKeyStroke (KeyEvent.VK_S,InputEvent.CTRL_MASK)); 
        
        exitItem.setMnemonic('Q'); 
        exitItem.setAccelerator (KeyStroke.getKeyStroke (KeyEvent.VK_E,InputEvent.CTRL_MASK)); 
        
        //將菜單項saveAsItem加入到菜單組fileMenu中
        fileMenu.add (saveAsItem); 
        //在菜單項中添加隔離
        fileMenu.addSeparator (); 
        fileMenu.add (exitItem);
        
        backItem.setMnemonic ('B'); 
        backItem.setAccelerator (KeyStroke.getKeyStroke (KeyEvent.VK_Z,InputEvent.CTRL_MASK)); 
        forwardItem.setMnemonic('D'); 
        forwardItem.setAccelerator (KeyStroke.getKeyStroke (KeyEvent.VK_P,InputEvent.CTRL_MASK)); 
        
        editMenu.setMnemonic('E'); 
        editMenu.add (backItem); 
        editMenu.add (forwardItem);  
        
        viewMenu.setMnemonic('V');
        
        fullscreenItem.setMnemonic('U');
        fullscreenItem.setAccelerator (KeyStroke.getKeyStroke (KeyEvent.VK_U,InputEvent.CTRL_MASK)); 
        sourceItem.setMnemonic('C');
        sourceItem.setAccelerator (KeyStroke.getKeyStroke (KeyEvent.VK_C,InputEvent.CTRL_MASK)); 
        reloadItem.setMnemonic('R');
        reloadItem.setAccelerator (KeyStroke.getKeyStroke (KeyEvent.VK_R,InputEvent.CTRL_MASK)); 
        
        Container contentPane=getContentPane (); 
            
        //設置大小
        scrollPane.setPreferredSize(new Dimension(100,500));
        contentPane.add (scrollPane, BorderLayout.SOUTH);
        
        //在工具欄中添加按鈕組件
        toolBar.add(picSave);
        toolBar.addSeparator();
        toolBar.add(picBack);
        toolBar.add(picForward);
        toolBar.addSeparator();
        toolBar.add(picView);
        toolBar.addSeparator();
        toolBar.add(picExit);
        
        contentPane.add (bar,BorderLayout.CENTER); 
        contentPane.add(toolBar,BorderLayout.NORTH);
        
        viewMenu.add (fullscreenItem); 
        viewMenu.add (sourceItem); 
        viewMenu.addSeparator (); 
        viewMenu.add (reloadItem); 
        
        jMenuBar1.add (fileMenu); 
        jMenuBar1.add (editMenu); 
        jMenuBar1.add (viewMenu); 

        setJMenuBar (jMenuBar1); 
    
        adress.add (label); 
        adress.add (jurl); 
        adress.add (button); 
        bar.add (adress); 
        
        //為組件添加事件監聽
        saveAsItem.addActionListener(this);
        picSave.addActionListener(this);
        exitItem.addActionListener(this);
        picExit.addActionListener(this);
        backItem.addActionListener(this);
        picBack.addActionListener(this);
        forwardItem.addActionListener(this);
        picForward.addActionListener(this);
        fullscreenItem.addActionListener(this);
        sourceItem.addActionListener(this);
        picView.addActionListener(this);
        reloadItem.addActionListener(this);
        button.addActionListener(this);
        jurl.addActionListener(this);
    }
    
    /**
    **實現監聽器接口的actionPerformed函數
    */
    public void actionPerformed(ActionEvent e) {
        String url = "";
        //點擊轉向按鈕
        if (e.getSource() == button){
            //獲得地址欄的內容
            url=jurl.getText (); 
            //url不為“”,并且以“http://”開頭
            if(url.length ()>0&&url.startsWith ("http://")){ 
                try { 
                    //JEditorPane組件顯示url的內容鏈接
                    jEditorPane1.setPage (url); 
                    //將url的內容添加到ArrayList對象history中
                    history.add(url); 
                    //historyIndex的數值設為history對象的長度-1
                    historyIndex=history.size()-1;
                    //重新布局
		    jEditorPane1.setEditable(false); //add by copy editor :)
                    jEditorPane1.revalidate (); 
                } 
                catch(Exception ex) { 
                    //如果鏈接顯示失敗,則彈出選擇對話框“無法打開該搜索頁”
                    JOptionPane.showMessageDialog (WebBrowser.this,"無法打開該搜索頁","網頁瀏覽器",JOptionPane.ERROR_MESSAGE);
                } 
            } 
            //url不為“”,并且不以“http://”開頭
            else if(url.length ()>0&&!url.startsWith ("http://")) { 
                //在url前面添加“http://”
                url="http://"+url; 
                try { 
                    jEditorPane1.setPage (url ); 
                    history.add(url); 
                    historyIndex=history.size()-1;
		    jEditorPane1.setEditable(false); //add by copy editor :)
                    jEditorPane1.revalidate (); 
                } 
                catch(Exception ex) {
                    JOptionPane.showMessageDialog (WebBrowser.this,"無法打開該搜索頁","網頁瀏覽器",JOptionPane.ERROR_MESSAGE);
                } 
            }
            //沒有輸入url,即url為空
            else if(url.length ()==0){
                JOptionPane.showMessageDialog (WebBrowser.this,"請輸入鏈接地址","網頁瀏覽器",JOptionPane.ERROR_MESSAGE);
            }
        
        }
        //輸入地址后點擊回車
        else if (e.getSource() == jurl){
            url=jurl.getText (); 
            if(url.length ()>0&&url.startsWith ("http://")) { 
                try { 
                    jEditorPane1.setPage (url); 
                    history.add(url); 
                    historyIndex=history.size()-1;
		    jEditorPane1.setEditable(false); //add by copy editor :)
                    jEditorPane1.revalidate (); 
                    jurl.setMaximumSize (jurl.getPreferredSize ()); 
                } 
                catch(Exception ex) { 
                    JOptionPane.showMessageDialog (WebBrowser.this,"無法打開該搜索頁","網頁瀏覽器",JOptionPane.ERROR_MESSAGE);
                } 
            } 
            else if(url.length ()>0&&!url.startsWith ("http://")) { 
                url="http://"+url; 
                try { 
                    jEditorPane1.setPage (url );
                    history.add(url); 
                    historyIndex=history.size()-1;
		    jEditorPane1.setEditable(false); //add by copy editor :)
                    jEditorPane1.revalidate (); 
                } 
                catch(Exception ex) { 
                    JOptionPane.showMessageDialog (WebBrowser.this,"無法打開該搜索頁","網頁瀏覽器",JOptionPane.ERROR_MESSAGE);
                } 
            }
            else if(url.length ()==0){
                JOptionPane.showMessageDialog (WebBrowser.this,"請輸入鏈接地址","網頁瀏覽器",JOptionPane.ERROR_MESSAGE);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产欧美一区二区三区网站| 91免费国产在线| 成人在线综合网站| 色婷婷国产精品综合在线观看| 欧洲一区二区三区在线| 欧美一卡2卡三卡4卡5免费| 国产欧美一区二区三区在线看蜜臀| 亚洲伦理在线免费看| 青青草原综合久久大伊人精品| 国内成人精品2018免费看| 91一区二区在线| 日韩免费高清电影| **网站欧美大片在线观看| 天天色天天操综合| 懂色一区二区三区免费观看 | 国产精品视频免费| 亚洲国产日韩在线一区模特| 国内精品久久久久影院薰衣草| 91丝袜美女网| 精品剧情在线观看| 亚洲一二三专区| 国产成人av电影在线播放| 欧美色视频在线观看| 国产亚洲综合色| 亚洲成人动漫精品| 成人黄色综合网站| 日韩欧美高清dvd碟片| 一区二区三区自拍| 国产成人8x视频一区二区| 精品视频1区2区3区| 国产精品久久久久一区| 美女网站色91| 欧美色综合网站| 国产精品欧美经典| 精品亚洲aⅴ乱码一区二区三区| 91成人免费电影| 中文字幕av一区二区三区| 免费欧美在线视频| 欧美在线免费视屏| 国产精品国产馆在线真实露脸 | 精品国产伦一区二区三区观看方式 | 日韩av在线发布| 91色porny在线视频| 日本一区二区在线不卡| 精品一二三四在线| 欧美精品久久久久久久多人混战| 综合久久久久久| 国产成人av网站| 精品不卡在线视频| 日韩av电影免费观看高清完整版在线观看 | 日韩欧美国产一区二区三区 | 日韩免费看的电影| 日韩va欧美va亚洲va久久| 欧美三级一区二区| 亚洲激情第一区| 91在线porny国产在线看| 国产欧美日韩三级| 风间由美性色一区二区三区| 久久综合色天天久久综合图片| 三级成人在线视频| 欧美日韩国产精品成人| 一区二区三区产品免费精品久久75| 成人免费观看视频| 久久久精品国产99久久精品芒果| 久久精品国产成人一区二区三区| 欧美午夜精品一区二区三区 | 欧美亚洲高清一区二区三区不卡| 综合电影一区二区三区 | 中文字幕一区二区三区在线播放| 国产成人福利片| 国产日韩三级在线| 成人激情免费电影网址| 中国色在线观看另类| 国产成人精品一区二区三区四区 | 成人黄色av电影| 亚洲国产精品av| 成人高清视频在线观看| 国产精品国产a级| 91久久久免费一区二区| 一区二区三区不卡视频在线观看 | 日精品一区二区| 在线成人免费观看| 日韩一区精品字幕| 日韩一区二区三区在线| 久久91精品国产91久久小草 | 成人深夜视频在线观看| 国产精品久久久久久妇女6080 | 亚洲福利一区二区| 在线成人免费视频| 精品一区二区在线看| 国产亲近乱来精品视频| 91啪亚洲精品| 视频在线观看国产精品| 日韩视频免费观看高清在线视频| 九色综合狠狠综合久久| 久久久99精品久久| eeuss鲁一区二区三区| 亚洲欧美另类久久久精品2019| 久久久久久久久伊人| 国产乱人伦精品一区二区在线观看 | 午夜精品久久久久久久99水蜜桃| 欧美精品久久99| 国产成人在线电影| 亚洲精品水蜜桃| 欧美一区中文字幕| 国产精品一区不卡| 亚洲蜜臀av乱码久久精品蜜桃| 欧美精品久久一区二区三区| 久久99国产精品麻豆| 最新中文字幕一区二区三区| 欧美日韩小视频| 国产乱码精品一区二区三区忘忧草| 国产精品不卡在线| 欧美日韩mp4| 国产a视频精品免费观看| 一区二区三区久久| 欧美白人最猛性xxxxx69交| 成人美女视频在线观看| 亚洲成人资源在线| 欧美激情综合网| 欧美日韩在线免费视频| 国产成人综合视频| 亚洲一区二区三区视频在线| 久久综合给合久久狠狠狠97色69| 色综合久久综合网| 九色综合狠狠综合久久| 一区二区免费在线| 久久精品免视看| 欧美日韩亚洲国产综合| 成人av资源站| 免费观看日韩av| 一区二区三区中文免费| 精品成人一区二区| 欧美日韩美女一区二区| 成人一二三区视频| 日本不卡在线视频| 中文字幕综合网| 精品福利在线导航| 欧美日韩亚州综合| 99久久99久久精品免费观看| 紧缚捆绑精品一区二区| 亚洲一区二区三区国产| 中文字幕免费观看一区| 欧美一区二区国产| 欧美在线免费播放| av一本久道久久综合久久鬼色| 精品一区二区三区免费毛片爱| 一个色综合av| 国产精品第一页第二页第三页| 日韩美女视频在线| 欧美日韩在线电影| 色综合网色综合| 懂色av一区二区在线播放| 日韩精品91亚洲二区在线观看| 亚洲图片另类小说| 久久女同性恋中文字幕| 91精品久久久久久久久99蜜臂| 在线精品视频一区二区| 成人av影院在线| 国产精品系列在线观看| 日本美女视频一区二区| 午夜伦欧美伦电影理论片| 一区二区三区色| 亚洲欧美综合另类在线卡通| 久久久.com| 久久久精品蜜桃| 久久综合九色综合欧美亚洲| 欧美一区二区三区精品| 欧美日韩国产综合久久| 欧美综合亚洲图片综合区| 91在线视频网址| av电影在线观看完整版一区二区| 国产精品香蕉一区二区三区| 国产精品一区二区不卡| 国产一区二区三区综合| 国产在线一区二区综合免费视频| 青青青爽久久午夜综合久久午夜| 日韩一区欧美二区| 青娱乐精品视频| 免费精品视频最新在线| 日韩电影免费在线看| 午夜精品国产更新| 天天综合网天天综合色| 亚洲成人激情社区| 亚洲一区二区三区国产| 亚洲线精品一区二区三区八戒| 一区二区三区欧美在线观看| 一区二区三区在线看| 亚洲乱码国产乱码精品精小说 | 884aa四虎影成人精品一区| 欧美人牲a欧美精品| 欧美日韩国产经典色站一区二区三区 | 中文字幕乱码一区二区免费| 国产欧美综合在线| 成人欧美一区二区三区黑人麻豆| ㊣最新国产の精品bt伙计久久| 亚洲黄色av一区| 午夜精品久久久久久久久久久 | 国产日韩av一区二区| 欧美国产日韩a欧美在线观看|