📄 searcher.java
字号:
package cn.myvideosite.ui;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.FlowLayout;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import cn.myvideosite.commons.Constant;
import cn.myvideosite.ui.listener.NextPageListener;
import cn.myvideosite.ui.listener.PreviousPageListener;
import cn.myvideosite.ui.listener.SearchButtonListener;
import cn.myvideosite.ui.listener.SearchJTextFiledListener;
import cn.myvideosite.ui.listener.SearchTextFiledListener;
import cn.myvideosite.ui.listener.TableClickListener;
public class Searcher extends JFrame{
private static final long serialVersionUID = 1L;
private JComboBox typeJComboBox = new JComboBox(new String[] {"视频","专辑"}); //下拉框
//private JLabel label1=new JLabel("搜索类型:"); //标签
private JTextField searchJTextField = new JTextField(Constant.SEARCH_TEXTFIELD_DEFAULT,15); //设置文本域
private JButton searchButton = new JButton("搜索");
private FlowLayout searchFlowLayout = new FlowLayout();
private FlowLayout pageFlowLayout = new FlowLayout(FlowLayout.RIGHT);
private JTable table = new JTable();
private BorderLayout borderLayout1 = new BorderLayout();
private JPanel jPanel1 = new JPanel();
private JPanel jPanel2 = new JPanel();
//private FlowLayout flowLayout2 = new FlowLayout(FlowLayout.RIGHT);
private JLabel totalLabel = new JLabel("记录总条数:");
private JLabel l1 = new JLabel("上一页");
private JLabel l2 = new JLabel("下一页");
public Searcher(){
this.setTitle("桌面视频搜索引擎myvideosite");
this.setSize(600,300);
this.setDefaultCloseOperation(EXIT_ON_CLOSE); //设置鼠标退出
this.setVisible(true);
this.setLayout(borderLayout1);
searchJTextField.setBounds(96,49,360,20);
searchJTextField.addMouseListener(new SearchJTextFiledListener(searchJTextField));
searchJTextField.addKeyListener(new SearchTextFiledListener(searchJTextField,table,totalLabel,typeJComboBox));
jPanel1.setLayout(searchFlowLayout);
jPanel1.add(typeJComboBox);
jPanel1.add(searchJTextField);
jPanel1.add(searchButton);
this.add(jPanel1,BorderLayout.NORTH);
// Dimension 类封装单个对象中组件的宽带和高度
this.table.getTableHeader().setPreferredSize(
new Dimension (this.table.getTableHeader().getPreferredSize().width,30));
this.table.addMouseListener(new TableClickListener(table));
JScrollPane scrollpane = new JScrollPane(this.table);
this.getContentPane().add(scrollpane);
this.add(scrollpane,BorderLayout.CENTER);
//searchButton.addMouseListener(new SearchButtonListener(searchJTextField,table,totalLabel));
searchButton.addMouseListener(new SearchButtonListener
(searchJTextField,table,totalLabel,typeJComboBox));
//searchButton.addKeyListener(new SearchTextFiledListener(searchJTextField,table));
l1.addMouseListener(new PreviousPageListener(searchJTextField,table,typeJComboBox));
l2.addMouseListener(new NextPageListener(searchJTextField,table,typeJComboBox));
jPanel2.setLayout(pageFlowLayout);
jPanel2.add(totalLabel);
jPanel2.add(l1);
jPanel2.add(l2);
this.add(jPanel2,BorderLayout.SOUTH);
}
public static void main(String[] args) {
new Searcher();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -