亚洲欧美第一页_禁久久精品乱码_粉嫩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一区二区三区免费野_久草精品视频
亚洲精品国产一区二区精华液 | 国产精品美女久久久久av爽李琼| 久久久99久久| 亚洲综合在线五月| 国产麻豆精品在线| 欧美视频三区在线播放| 亚洲国产精品激情在线观看| 青青草国产精品亚洲专区无| 日本高清视频一区二区| 国产日韩综合av| 麻豆免费看一区二区三区| 欧美伊人久久久久久午夜久久久久| 久久精品在线免费观看| 日韩二区三区四区| 色婷婷av一区二区三区软件| 国产午夜精品一区二区| 久久se精品一区精品二区| 欧美吻胸吃奶大尺度电影| 中文字幕一区二区三区蜜月| 国产精品99久久久| 久久婷婷国产综合国色天香| 日韩精品一区第一页| 日本丰满少妇一区二区三区| 亚洲欧洲av在线| 丁香一区二区三区| 国产精品免费视频观看| 国产99久久久久| 国产婷婷色一区二区三区| 国产一区二区成人久久免费影院| 日韩免费福利电影在线观看| 视频一区免费在线观看| 欧美日韩免费一区二区三区视频| 一区二区三区成人| 91久久精品国产91性色tv| 亚洲色图清纯唯美| 91传媒视频在线播放| 亚洲永久免费视频| 欧美人成免费网站| 日韩成人精品视频| 欧美电影免费观看高清完整版| 男男gaygay亚洲| 精品国产免费一区二区三区香蕉| 美女高潮久久久| 久久在线免费观看| www.性欧美| 亚洲一区精品在线| 欧美一区二区三区免费视频| 日韩—二三区免费观看av| 日韩三级视频在线看| 国产精品1区二区.| 亚洲三级电影网站| 欧美日本韩国一区二区三区视频 | 亚洲欧美日本在线| 精品视频免费看| 国内偷窥港台综合视频在线播放| 久久中文娱乐网| 色婷婷激情久久| 免费在线观看不卡| 国产精品福利电影一区二区三区四区 | 欧美疯狂性受xxxxx喷水图片| 日韩 欧美一区二区三区| 久久久午夜精品理论片中文字幕| 99国产精品久久久久久久久久久| 五月婷婷综合在线| 欧美国产欧美综合| 免费成人小视频| 欧美精品亚洲二区| 亚洲国产精品av| 国产高清久久久| 中文字幕乱码亚洲精品一区| 97aⅴ精品视频一二三区| 日韩精品午夜视频| 国产色产综合产在线视频| 在线观看一区二区精品视频| 麻豆一区二区三| 亚洲精品免费在线观看| 欧美电影免费观看完整版| 99久久精品国产精品久久| 日韩成人dvd| 亚洲色图色小说| 久久久蜜臀国产一区二区| 欧美日韩一区二区三区四区 | 精彩视频一区二区| 一个色综合av| 国产网红主播福利一区二区| 国产成a人无v码亚洲福利| 久久久久久99精品| 国产不卡视频在线播放| 亚洲天堂成人网| 91精品国产综合久久久久| 成人av影院在线| 国产在线精品不卡| 午夜激情一区二区| 亚洲综合精品久久| 亚洲男人的天堂av| 久久久精品中文字幕麻豆发布| 色94色欧美sute亚洲线路一久| 国产精品中文有码| 日本在线不卡视频| 视频一区二区不卡| 亚洲123区在线观看| 成人欧美一区二区三区1314| 久久久欧美精品sm网站| 日韩精品专区在线| 欧美一区二区三级| 91精品中文字幕一区二区三区| 一本久久精品一区二区| av高清久久久| 欧美一区二区三区四区视频| 亚洲国产精品久久人人爱| 欧美日韩精品欧美日韩精品| 亚洲第一精品在线| 一区二区在线免费观看| 综合电影一区二区三区| 国产精品福利av| 中文字幕免费观看一区| 国产色91在线| 国产精品入口麻豆原神| 久久久国产午夜精品| 国产亚洲人成网站| 国产精品欧美经典| 中文字幕在线不卡一区| 亚洲人成人一区二区在线观看| 亚洲欧美日韩中文字幕一区二区三区| 136国产福利精品导航| 亚洲婷婷综合色高清在线| 亚洲女同ⅹxx女同tv| 亚洲在线中文字幕| 麻豆一区二区99久久久久| 国产一区二区三区免费看 | 久久综合av免费| 欧美精品久久天天躁| 99久久久精品| 久久电影网站中文字幕| 国产精品高潮久久久久无| 亚洲色欲色欲www在线观看| 伊人婷婷欧美激情| 免费美女久久99| 成人午夜在线视频| 欧美日韩免费电影| 精品国产髙清在线看国产毛片| 精品日韩成人av| 亚洲欧美一区二区在线观看| 午夜激情一区二区| 国产成人精品一区二| 色婷婷综合久久久久中文| 91精品蜜臀在线一区尤物| 久久久影院官网| 亚洲狠狠爱一区二区三区| 韩国女主播成人在线观看| 99久久精品免费看| 4438x成人网最大色成网站| 日本一区二区三区在线观看| 亚洲狠狠丁香婷婷综合久久久| 免费观看一级特黄欧美大片| 国产xxx精品视频大全| 99国产精品久| 国产精品久久久久一区二区三区共| 亚洲视频在线观看一区| 日韩av一区二区三区四区| 豆国产96在线|亚洲| 欧美一区二区三区公司| 最新国产成人在线观看| 精品一区二区久久| 91久久久免费一区二区| 欧美激情一区二区三区蜜桃视频| 午夜影视日本亚洲欧洲精品| 成人午夜电影网站| 欧美一级久久久久久久大片| 日韩一区欧美小说| 国产精品资源在线观看| 在线成人午夜影院| 亚洲在线观看免费视频| 丁香婷婷深情五月亚洲| 欧美一区二区三区四区五区| 亚洲另类春色校园小说| 高清不卡一二三区| 日韩欧美高清一区| 亚洲国产精品视频| 91行情网站电视在线观看高清版| 欧美精品一区二区在线观看| 亚洲va欧美va人人爽午夜| 一本色道亚洲精品aⅴ| 久久久精品国产免费观看同学| 免费成人在线观看视频| 欧美主播一区二区三区| 亚洲欧美日韩国产综合在线| 粉嫩av一区二区三区在线播放 | 蜜臀av性久久久久蜜臀av麻豆| 日本久久电影网| √…a在线天堂一区| 成人av片在线观看| 国产精品高潮久久久久无| 国产夫妻精品视频| 久久精品视频网| 国产精品456露脸| 国产日韩欧美综合在线| 国产成人精品1024| 日本一区二区三区国色天香| 成人免费观看男女羞羞视频|