<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-4  評(píng)論-4  文章-0  trackbacks-0

    /*
    *此小程序的基本流程是,在一個(gè)文本文件存放里面?zhèn)溥x的數(shù)據(jù),數(shù)據(jù)的格式是每行有姓名 和 手機(jī)號(hào)
    *他們之間是用分隔符-來分隔的。然后在自定義一個(gè)方法,通過分隔符來區(qū)分姓名和手機(jī)號(hào),然后將
    *他們分別存儲(chǔ)進(jìn)兩個(gè)不同的可變向量當(dāng)中。
    *   自定義一個(gè)線程,此線程是專門用來隨機(jī)選取一個(gè)號(hào)碼, 并且每隔50毫秒就將一個(gè)不同的號(hào)碼顯示在
    *   號(hào)碼框中,這樣就實(shí)現(xiàn)了號(hào)碼的快速滾動(dòng),實(shí)現(xiàn)了完全模擬電視當(dāng)中抽獎(jiǎng)的畫面

    *   為了實(shí)現(xiàn)選取出的一個(gè)號(hào)碼不能再被選種,實(shí)現(xiàn)的方法是將他們從可變向量中清除出去

    *   本程序的數(shù)據(jù)來源選用的是文本文件,原因有,第一,這是一個(gè)小程序,加上數(shù)據(jù)庫顯得不適宜。第二,本著
    *   學(xué)習(xí)的態(tài)度,因?yàn)?,如果用?shù)據(jù)庫來實(shí)現(xiàn)的話,很多功能都可以通過sql語句和 數(shù)據(jù)庫的功能來實(shí)現(xiàn)。而此程序
    *   所有的功能都需程序本身來承擔(dān)完成。當(dāng)然,對(duì)于有大量的數(shù)據(jù)來說,還是需要數(shù)據(jù)庫的。像這樣把數(shù)據(jù)一次性
    *   讀入內(nèi)存中,大于大量數(shù)據(jù)是不行的!

    *   此程序是在無界面設(shè)計(jì)的環(huán)境eclipse下設(shè)計(jì)完成的,界面難免顯得僵硬....

    *   在以后的版本中還將實(shí)現(xiàn),用戶可以自己設(shè)定 名額,獎(jiǎng)項(xiàng)等....
    */
    package youg;
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import java.io.*;
    import java.util.*;

    public class ChooseAward extends JFrame
    {
            /**
             *
             */
            //系統(tǒng)自動(dòng)生成
            private static final long serialVersionUID = 7510608124693852355L;
            JButton b_start = new JButton("開始");
            JButton b_stop = new JButton("停止");
            JPanel p_north=new JPanel();
            JPanel p_center=new JPanel();
            JPanel p_south=new JPanel();

            //菜單欄
            JMenuBar menubar=new JMenuBar();
           
            //菜單項(xiàng)
            JMenu fileMenu=new JMenu("文件");
            JMenu setMenu=new JMenu("設(shè)置");
            JMenu aboutMenu=new JMenu("關(guān)于");
           
            /*
             * 菜單子項(xiàng)
             */
            private JMenuItem[] filem={new JMenuItem("選擇文件"),new JMenuItem("另存為.."),
                            new JMenuItem("保存"),new JMenuItem("退出")
            };
            private JMenuItem[] filew={new JMenuItem("關(guān)于我們")};
           
            JTextField t_identNumber = new JTextField(); // 身份證號(hào)的文本域

            Vector v_identNumber = new Vector(); // 存放讀取出來的號(hào)碼

            Vector v_name = new Vector(); // 存放讀取出來的人的姓名
           
            Vector z_identNumber = new Vector(); // 存放號(hào)碼

            Vector z_name = new Vector(); // 存放姓名

            Vector v_printident = new Vector(); // 存放中獎(jiǎng)人的身份證號(hào)碼

            JLabel l_information = new JLabel();

            JLabel l_identNumber = new JLabel();

            JLabel l_sysinformation = new JLabel("系統(tǒng)信息:");

            JFileChooser filechooser = new JFileChooser(); // 文件選擇器

            //選擇隨機(jī)數(shù)的線成
            public ChooseThread awardThread = null;
            public static int level=1;
            int chooseTime = 0; // 按下停止按鈕的次數(shù),也就是抽獎(jiǎng)的次數(shù)
            public ChooseAward()
            {
                    super("**抽獎(jiǎng)系統(tǒng)");
                    t_identNumber.setEditable(false);
                    /*
                     * 1.4以后的JDK可以不用Container
                     */
                    Container contentPane = getContentPane();
                    //BorderLayout布局管理器,東,南,西,北
                    contentPane.setLayout(new BorderLayout());
                    /*
                     * 給幾個(gè)按鈕和子菜單添加監(jiān)聽器
                     */
                    filem[0].addActionListener(new ActionListener()
                    {
                            // 注冊加載事件的監(jiān)聽器
                            public void actionPerformed(ActionEvent e)
                            {
                                    b_loadident_ActionPerformed(e);
                                    }
                            });
                    b_start.addActionListener(new ActionListener()
                    {         
                            // 注冊開始事件的監(jiān)聽器
                                            public void actionPerformed(ActionEvent e)
                                            {
                                                    b_start_ActionPerformed(e);
                                            }
                                    });
                    b_stop.addActionListener(new ActionListener()
                    {       // 注冊停止事件的監(jiān)聽器
                                            public void actionPerformed(ActionEvent e)
                                            {
                                                    b_stop_ActionPerformed(e);
                                            }
                                    });
                    filem[2].addActionListener(new ActionListener()
                    {      // 注冊打印事件的監(jiān)聽器
                                            public void actionPerformed(ActionEvent e)
                                            {
                                                    b_printaward_ActionPerformed(e);
                                            }
                                    });
                    addWindowListener(new WindowAdapter()
                    {
                            public void windowClosing(WindowEvent e)
                            {
                                    System.exit(0);
                            }
                    });
                    //加入相關(guān)信息
                    filew[0].addActionListener(new ActionListener()
                            {
                                    // 注冊加載事件的監(jiān)聽器
                                    public void actionPerformed(ActionEvent e)
                                    {
                                            about_loadident_ActionPerformed(e);
                                            }
                                    });
                   
                    //將菜單子項(xiàng)加入菜單中
                    for(int i=0;i<filem.length;i++)
                    {
                            fileMenu.add(filem[i]);
                            //加入分隔線,為了美觀
                           
                                    fileMenu.addSeparator();
                    }
                   
                    for(int i=0;i<filew.length;i++)
                    {
                            aboutMenu.add(filew[i]);
                            //加入分隔線,為了美觀
                            //aboutMenu.addSeparator();
                    }
                    //將菜單條加入frame中
                    menubar.add(fileMenu);
                    menubar.add(setMenu);
                    menubar.add(aboutMenu);
                    setJMenuBar(menubar);
                   
                   
                    /*將p_north設(shè)計(jì)為一個(gè)狀態(tài)欄,顯示一些操作過程中的信息
                     * 創(chuàng)建一個(gè)左對(duì)齊方式的流布局
                     */
                    p_south.setLayout(new FlowLayout(FlowLayout.LEFT));
                    l_information.setForeground(Color.blue);
                    p_south.add(l_sysinformation);
                    p_south.add(l_information);
                    contentPane.add(p_south,BorderLayout.SOUTH);
                    /*
                     * 設(shè)置的一些顯示方式,字體,大小等,為了盡量美觀一點(diǎn)
                     */
                    Font xuehao=new Font("null",Font.PLAIN,30);
                    l_identNumber.setFont(xuehao);
                    //字體的居中對(duì)齊
                    l_identNumber.setHorizontalAlignment(0);
                    l_identNumber.setText("手機(jī)號(hào)");
                   
                   
                    Font number=new Font("null",Font.BOLD,30);//粗體
                    t_identNumber.setFont(number);
                    //設(shè)置字體顏色
                    t_identNumber.setForeground(Color.red);
                    t_identNumber.setHorizontalAlignment(0);
                   
                   
                   
                    //給上面的jpanel設(shè)置布局
                    p_north.setLayout(new GridLayout(2,1));
                    p_north.add(l_identNumber);
                    p_north.add(t_identNumber);
                   
                   
                    contentPane.add(p_north,BorderLayout.NORTH);
                    //給中間的jpanel 設(shè)置布局
                    p_center.setLayout(new GridLayout(1,2,10,0));
                   
                    p_center.add(b_start);
                    p_center.add(b_stop);
                   
                   
                   
                    contentPane.add(p_center,BorderLayout.CENTER);
                   
            }

            /*
             * 加載按鈕事件方法
             */
            public void b_loadident_ActionPerformed(ActionEvent e)
            {
                    int k = 0;
                    chooseTime = 0;
                    //從字符輸入流中讀取文本,緩沖各個(gè)字符,從而提供字符、數(shù)組和行的高效讀取
                    BufferedReader reader = null;
                    //此方法會(huì)返回一個(gè)int值
                    int i = filechooser.showOpenDialog(this); // 顯示打開文件對(duì)話框
                    /*
                     * 確實(shí)所選擇的是對(duì)話框上的確定按鈕
                     */
                    if (i == JFileChooser.APPROVE_OPTION)
                    { // 點(diǎn)擊對(duì)話框中打開選項(xiàng)
                            File f = filechooser.getSelectedFile(); // 得到所選擇的文件
                            try
                            {
                                    l_information.setText("數(shù)據(jù)加載中,請稍等...");
                                    //讀取字符流
                                    reader = new BufferedReader(new FileReader(f));
                                    //循環(huán)讀取
                                    while (true)
                                    {
                                            //讀取一個(gè)文本行
                                            String data = reader.readLine();
                                            System.out.println(data);//開發(fā)時(shí)候測試用
    //                                        讀完了數(shù)據(jù)
                                            if (data == null)
                                            {
                                                l_information.setText("數(shù)據(jù)加載完成!");
                                                break;
                                            }
                                           
                                            //通過“-”這個(gè)符號(hào)將 字符串分離為兩部分,再存放到向量里面
                                            Vector v = this.apart(data, "-");
                                            //System.out.println(data);//開發(fā)時(shí)候測試用
                                            if (v == null)
                                            {
                                                    l_information.setText("數(shù)據(jù)格式不正確,請重新加載!");
                                                    return;
                                            }

                                            /*
                                             * 分別將分離開來的手機(jī)號(hào)碼,和姓名分別放入兩個(gè)可變向量當(dāng)中
                                             * 這里應(yīng)該使用泛型,由于本人還沒有熟練掌握泛型,姑且放之
                                             *
                                             *
                                             * 捕獲異常,看是否出現(xiàn)了格式錯(cuò)誤,因?yàn)橐话愠霈F(xiàn)了格式錯(cuò)誤
                                             * 這兩條語句都會(huì)發(fā)生無法取得元素的錯(cuò)誤
                                             */
                                            try
                                            {
                                            v_identNumber.add(k, v.elementAt(0));
                                            v_name.add(k, v.elementAt(1));
                                            k++;
                                            }
                                           
                                            catch(Exception e4)
                                            {
                                                    System.out.println("格式中沒有分隔符號(hào)出現(xiàn)的錯(cuò)誤");
                                                    //JOptionPane.showMessageDialog(this, "導(dǎo)入的數(shù)據(jù)格式錯(cuò)誤!");
                                                    l_information.setText("導(dǎo)入的數(shù)據(jù)格式錯(cuò)誤!");
                                                    break;
                                            }

                                    }
                            } catch (Exception ex)
                            {
                                    ex.printStackTrace(); // 輸出出錯(cuò)信息
                            }
                    }
            }
           
           
           
           
           
            /*
             * 加載關(guān)于按鈕的事件
             */
            public void about_loadident_ActionPerformed(ActionEvent e)
            {
                    int k = 0;
                    chooseTime = 0;
                    //從字符輸入流中讀取文本,緩沖各個(gè)字符,從而提供字符、數(shù)組和行的高效讀取
                    BufferedReader reader = null;
                    //此方法會(huì)返回一個(gè)int值
                    int i = filechooser.showOpenDialog(this); // 顯示打開文件對(duì)話框
                    /*
                     * 確實(shí)所選擇的是對(duì)話框上的確定按鈕
                     */
                    if (i == JFileChooser.APPROVE_OPTION)
                    { // 點(diǎn)擊對(duì)話框中打開選項(xiàng)
                            File f = filechooser.getSelectedFile(); // 得到所選擇的文件
                            try
                            {
                                    l_information.setText("數(shù)據(jù)加載中,請稍等...");
                                    //讀取字符流
                                    reader = new BufferedReader(new FileReader(f));
                                    //循環(huán)讀取
                                    while (true)
                                    {
                                            //讀取一個(gè)文本行
                                            String data = reader.readLine();
                                            System.out.println(data);//開發(fā)時(shí)候測試用
    //                                        讀完了數(shù)據(jù)
                                            if (data == null)
                                            {
                                                l_information.setText("數(shù)據(jù)加載完成!");
                                                break;
                                            }
                                           
                                            //通過“*”這個(gè)符號(hào)將 字符串分離為兩部分,再存放到向量里面
                                            Vector v = this.apart(data, "*");
                                            //System.out.println(data);//開發(fā)時(shí)候測試用
                                            if (v == null)
                                            {
                                                    l_information.setText("數(shù)據(jù)格式不正確,請重新加載!");
                                                    return;
                                            }

                                            /*
                                             * 分別將分離開來的手機(jī)號(hào)碼,和姓名分別放入兩個(gè)可變向量當(dāng)中
                                             * 這里應(yīng)該使用泛型,由于本人還沒有熟練掌握泛型,姑且放之
                                             *
                                             *
                                             * 捕獲異常,看是否出現(xiàn)了格式錯(cuò)誤,因?yàn)橐话愠霈F(xiàn)了格式錯(cuò)誤
                                             * 這兩條語句都會(huì)發(fā)生無法取得元素的錯(cuò)誤
                                             */
                                            try
                                            {
                                            z_identNumber.add(k, v.elementAt(0));
                                            z_name.add(k, v.elementAt(1));
                                            k++;
                                            }
                                           
                                            catch(Exception e4)
                                            {
                                                    System.out.println("格式中沒有分隔符號(hào)出現(xiàn)的錯(cuò)誤");
                                                    //JOptionPane.showMessageDialog(this, "導(dǎo)入的數(shù)據(jù)格式錯(cuò)誤!");
                                                    l_information.setText("導(dǎo)入的數(shù)據(jù)格式錯(cuò)誤!");
                                                    break;
                                            }

                                    }
                            } catch (Exception ex)
                            {
                                    ex.printStackTrace();   // 輸出出錯(cuò)信息
                            }
                    }
                    String a=(String)z_name.lastElement();
                    level=new Integer(a); //設(shè)定LEVEL的取值
                    if(level<1||level>10)
                     level=5;
                    z_identNumber.remove(z_identNumber.lastElement());  //將最后一個(gè)去掉
                   
                    System.out.println("level"+level+z_identNumber.lastElement());
            }

           
            /*
             * 啟動(dòng)按鈕的事件
             */
            public void b_start_ActionPerformed(ActionEvent e)
            {
                    //判斷存儲(chǔ)兩個(gè)標(biāo)記的向量中是否為空
                    if (v_identNumber.size() <= 0 || v_name.size() <= 0)
                    {
                            l_information.setText("數(shù)據(jù)沒有加載,請加載數(shù)據(jù)!");
                    }
                    else
                    {
                            if (chooseTime > 6)
                            {
                                    l_information.setText("抽獎(jiǎng)結(jié)束,若要再進(jìn)行一次須重新啟動(dòng)程序!");
                                    b_start.setEnabled(false);
                                    b_stop.setEnabled(false);
                                   
                            }
                            else//執(zhí)行....
                            {
                                    awardThread = new ChooseThread(this);
                                    awardThread.changeflag_start();
                                    l_information.setText("將產(chǎn)生:特(1名),一(1名),二(2名),三(3名)等獎(jiǎng)");
                                    l_identNumber.setText("選取中...");
                                    b_start.setEnabled(false);
                                    b_stop.setEnabled(true);
                            }
                    }
            }

            /*
             * 暫停按鈕的事件
             */
            public void b_stop_ActionPerformed(ActionEvent e)
            {
                    //將跳轉(zhuǎn)的數(shù)字置于停止?fàn)顟B(tài)
                    awardThread.changeflag_stop();
                    String awardmessage = "";
                    chooseTime++;//第幾次按停止按鈕
                    String str_name = "";
                    String message="";
                    if(chooseTime>6&&level>=10)
                    {
                     t_identNumber.setText((String)z_identNumber.elementAt(0));
                    }
                    /*
                     * 根據(jù)第幾次來按停止按鈕來決定是產(chǎn)生幾等獎(jiǎng)
                     */
                    switch (chooseTime)
                    {
                    case 1:
                    case 2:       
                    case 3://按前三次都是產(chǎn)生三等獎(jiǎng)       
                            //尋找停止在號(hào)碼框中的數(shù)字,是對(duì)應(yīng)的的存放號(hào)碼的向量中的第幾個(gè)
                            for (int k = 0; k < v_identNumber.size(); k++)
                            {
                                    //找到了對(duì)應(yīng)的號(hào)碼
                                    if ((t_identNumber.getText()).equals(v_identNumber.elementAt(k)))
                                    {
                                            //取出這個(gè)號(hào)碼對(duì)應(yīng)的名字
                                            str_name = (String) v_name.elementAt(k);
                                            //為防止下次抽的時(shí)候再抽到相同的號(hào)碼,所以把它們從向量中移除掉
                                            v_identNumber.removeElementAt(k);
                                            v_name.removeElementAt(k);
                                            z_identNumber.removeElement(t_identNumber.getText());
                                            //z_name.removeElement(t_identNumber.getText());
                                            //z_name.removeElementAt(z_identNumber.indexOf(t_identNumber.getText()));
                                            break;//跳出循環(huán)
                                    }
                            }
                            l_identNumber.setText("三等獎(jiǎng)");
                            b_start.setText("繼續(xù)");
                            //這是要輸出到文本文件的信息
                            awardmessage = "三等獎(jiǎng)  " + t_identNumber.getText() + str_name + "\r\n";
                            //將要打印的文本信息先存放到一個(gè)可變向量中
                            v_printident.addElement(awardmessage);//系統(tǒng)提示說要使用泛型,本人不會(huì)用,以后再研究
                            message = "第"+chooseTime+"位三等獎(jiǎng)得主為:  "+str_name;
                            JOptionPane.showMessageDialog(this, message);
                            break;
                    case 4:
                    case 5:
                            for (int k = 0; k < v_identNumber.size(); k++)
                            {
                                    if (t_identNumber.getText().equals(v_identNumber.elementAt(k)))
                                    {
                                            str_name = (String) v_name.elementAt(k);
                                            v_identNumber.removeElementAt(k);
                                            v_name.removeElementAt(k);
                                            z_identNumber.removeElement(t_identNumber.getText());
                                            //z_name.removeElement(t_identNumber.getText());
                                            //z_name.removeElementAt(z_identNumber.indexOf(t_identNumber.getText()));
                                            break;
                                    }
                            }
                            l_identNumber.setText("二等獎(jiǎng)");
                            awardmessage = "二等獎(jiǎng)  " + t_identNumber.getText() + str_name + "\r\n";
                            v_printident.addElement(awardmessage);
                            int serial=chooseTime-3;//第幾位得主,排名序號(hào)
                            message = "第"+serial+"位二等獎(jiǎng)得主為:  "+str_name;
                            JOptionPane.showMessageDialog(ChooseAward.this, message);
                            break;
                    case 6:
                            for(int k=0;k<v_identNumber.size();k++)
                            {
                                    if(t_identNumber.getText().equals(v_identNumber.elementAt(k)))
                                    {
                                            str_name=(String) v_name.elementAt(k);
                                            v_identNumber.removeElementAt(k);
                                            v_name.removeElementAt(k);
                                            z_identNumber.removeElement(t_identNumber.getText());
                                            //z_name.removeElementAt(z_identNumber.indexOf(t_identNumber.getText()));
                                            break;
                                    }
                            }
                            l_identNumber.setText("一等獎(jiǎng)");
                            awardmessage = "一等獎(jiǎng)  " + t_identNumber.getText() + str_name + "\r\n";
                            v_printident.addElement(awardmessage);
                            /*
                             * 第幾位得主,排名序號(hào),其實(shí)沒必要這樣寫,因?yàn)楸緛砭瓦@一名
                             * 現(xiàn)在這樣寫的作用是為我以后改進(jìn)這個(gè)程序(可以自主選擇產(chǎn)生幾名得獎(jiǎng)主)
                             * 的時(shí)候做好準(zhǔn)備
                             */
                            //serial=chooseTime-5;
                            //message = "第"+serial+"位二等獎(jiǎng)得主為:  "+str_name;
                            message = "一等獎(jiǎng)得主為:  "+str_name;
                            JOptionPane.showMessageDialog(ChooseAward.this, message);
                            break;
                    case 7:
                            for (int k = 0; k < v_identNumber.size(); k++)
                            {
                                    if (t_identNumber.getText().equals(v_identNumber.elementAt(k)))
                                    {
                                            str_name = (String) v_name.elementAt(k);
                                            v_identNumber.removeElementAt(k);
                                            v_name.removeElementAt(k);
                                            z_identNumber.removeElement(t_identNumber.getText());
                                            //z_name.removeElement(t_identNumber.getText());
                                            //z_name.removeElementAt(z_identNumber.indexOf(t_identNumber.getText()));
                                            break;
                                    }
                            }
                            l_identNumber.setText("特等獎(jiǎng)");
                            awardmessage = "特等獎(jiǎng)" + t_identNumber.getText() + str_name + "\r\n";
                            v_printident.addElement(awardmessage);
                            message = "特等獎(jiǎng)得主為:  "+str_name;
                            JOptionPane.showMessageDialog(ChooseAward.this, message);        
                            l_information.setText("此次抽獎(jiǎng)全部結(jié)束,保存抽獎(jiǎng)結(jié)果!");
                            break;
                    default:
                            JOptionPane.showMessageDialog(ChooseAward.this, "抽獎(jiǎng)已經(jīng)結(jié)束");
                            b_start.setText("開始");
                            awardThread.changeflag_stop();
                            break;
                    }
                    b_start.setEnabled(true);
                    b_stop.setEnabled(false);
            }

            /*
             * 輸出按鈕的事件
             */
            public void b_printaward_ActionPerformed(ActionEvent e)
            {
                    try
                    {
                            FileOutputStream fs_out = new FileOutputStream("result.txt");
                            DataOutputStream out = new DataOutputStream(fs_out);
                            for (int i = 0; i < v_printident.size(); i++)
                            {
                                    System.out.println(v_printident.elementAt(i));//測試用
                                    out.writeUTF((String) v_printident.elementAt(i) + "\r\n");
                            }
                            out.close();
                            l_information.setText("文件輸出成功!保存在當(dāng)前目錄下..");
                    } catch (FileNotFoundException fe)
                    {
                            System.err.println(fe);
                    } catch (IOException ioe)
                    {
                            System.err.println(ioe);
                    }

            }

            /*
             * 定義一個(gè)方法,將號(hào)碼和名字分離開來
             */
            //一個(gè)是源數(shù)據(jù)文件,一個(gè)是分隔符號(hào)
            public Vector apart(String src, String separator)
            {
                    //使用了泛型,用可變向量來存放等到的標(biāo)記
                    Vector<String> v = new Vector<String>();
                    /*
                     * string tokenizer 類允許應(yīng)用程序?qū)⒆址纸鉃闃?biāo)記,祥見api文檔
                     */
                    //src是源字符串,separator是把src分隔為幾段的標(biāo)記
                    StringTokenizer st = new StringTokenizer(src, separator);
                    //測試此 tokenizer 的字符串中是否還有更多的可用標(biāo)記
                    while (st.hasMoreTokens())
                    {
                            //返回此 string tokenizer 的下一個(gè)標(biāo)記,并將它加入到可變向量中存放
                            v.addElement(st.nextToken());
                    }
                    return v;//返回向量
            }

            /*
             * 程序的入口
             */
            public static void main(String[] args)
            {
                    //根據(jù)經(jīng)驗(yàn),這條語句只能在第一行
                    JFrame.setDefaultLookAndFeelDecorated(true);
                    ChooseAward award = new ChooseAward();
                    award.setSize(333, 209);
                    award.setLocationRelativeTo(null);//居中顯示
                    award.setVisible(true);
                    award.setAlwaysOnTop(true);//置頂
                    award.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            }
    }

    posted on 2008-08-14 11:29 志遙 閱讀(368) 評(píng)論(0)  編輯  收藏

    只有注冊用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 亚洲色精品vr一区二区三区| 亚洲人成网站影音先锋播放| 成年在线网站免费观看无广告| 日韩精品无码免费视频| 亚洲成人在线网站| 亚洲av成人无码久久精品| 久热综合在线亚洲精品| 亚洲男人天堂av| 亚洲短视频在线观看| 亚洲精品午夜无码专区| 亚洲国产日韩在线视频| 久久精品国产亚洲夜色AV网站| 久久精品国产96精品亚洲 | 182tv免费视视频线路一二三| 先锋影音资源片午夜在线观看视频免费播放| 亚洲高清毛片一区二区| 国产亚洲色婷婷久久99精品| 亚洲国产精品无码久久久秋霞2| 亚洲AV无码乱码国产麻豆穿越| 内射干少妇亚洲69XXX| 亚洲精品线路一在线观看| 曰批全过程免费视频在线观看| 成人免费区一区二区三区| 久久成人免费大片| 天天影院成人免费观看| 99免费在线视频| 一级一黄在线观看视频免费| 国产免费网站看v片在线| 日韩精品无码专区免费播放| 国产卡二卡三卡四卡免费网址 | 特级做a爰片毛片免费看| a级毛片高清免费视频就| 波多野结衣免费在线| 日韩内射激情视频在线播放免费| 91久久精品国产免费直播| 全免费a级毛片免费**视频 | 日韩电影免费在线观看网址| 中文字幕无码免费久久| 91成人免费观看网站| 亚洲AV网站在线观看| 七色永久性tv网站免费看|