📄 05151858102.java
字号:
jTextField_grapheme.setEnabled(false);
jTextField_grapheme.setDisabledTextColor(Color.BLACK);
jTextField_fontsize.setEnabled(false);
jTextField_fontsize.setDisabledTextColor(Color.BLACK);
jTextField_font.setBounds(new Rectangle(8, 35, 148, 20));
jTextField_grapheme.setBounds(new Rectangle(161, 35, 109, 20));
jTextField_fontsize.setBounds(new Rectangle(276, 35, 66, 20));
scrollPane1.setBounds(new Rectangle(8, 56, 148, 120));
scrollPane2.setBounds(new Rectangle(161, 56, 109, 120));
scrollPane3.setBounds(new Rectangle(276, 56, 66, 120));
jButton1.setBounds(new Rectangle(350, 38, 72, 26));
jButton2.setBounds(new Rectangle(350, 83, 72, 26));
jTextField_preview.setBounds(new Rectangle(10, 185, 400, 75));
jLabel_charset.setBounds(new Rectangle(70, 268, 65, 23));
jComboBox1.setBounds(new Rectangle(140, 268, 181, 22));
contentPane.add(jLabel_ziti);
contentPane.add(jLabel_daxiao);
contentPane.add(jLabel_zixing);
contentPane.add(jTextField_font);
contentPane.add(jTextField_grapheme);
contentPane.add(jTextField_fontsize);
contentPane.add(scrollPane1);
contentPane.add(scrollPane2);
contentPane.add(scrollPane3);
contentPane.add(jButton1);
contentPane.add(jButton2);
contentPane.add(jTextField_preview);
jComboBox1.addItem("CHINESE_GB2312");
contentPane.add(jLabel_charset);
contentPane.add(jComboBox1);
jButton1.addActionListener(this);
jButton2.addActionListener(this);
// Button1Listener fok=new Button1Listener();
// jButton1.addActionListener(fok);
// Button2Listener fon=new Button2Listener();
// jButton2.addActionListener(fon);
MouseListener mouseListener1 = new MouseAdapter()
{
public void mouseClicked(MouseEvent e)
{
if (e.getClickCount() == 1)
{
index = jList1.locationToIndex(e.getPoint());
jList1.setSelectedIndex(index);
if (index == 8 || index >= 11)
{
jTextField_preview.setText("预览中文字体");
}
else
{
jTextField_preview.setText("Preview Font");
}
jTextField_font.setText(jList1.getSelectedValue().toString());
ziti = jTextField_font.getText();
jTextField_preview.setFont(new Font(ziti, zixing, daxiao));
}
}
};
MouseListener mouseListener2 = new MouseAdapter()
{
public void mouseClicked(MouseEvent e)
{
if (e.getClickCount() == 1)
{
index = jList2.locationToIndex(e.getPoint());
jList2.setSelectedIndex(index);
String zip = jList2.getSelectedValue().toString();
jTextField_grapheme.setText(zip);
if (zip.compareTo("常规") == 0)
{
zixing = Font.PLAIN;
}
else if (zip.compareTo("斜体") == 0)
{
zixing = Font.ITALIC;
}
else if (zip.compareTo("粗体") == 0)
{
zixing = Font.BOLD;
}
else if (zip.compareTo("粗斜体") == 0)
{
// zixing=Font.ITALIC.deriveFont(Font.BOLD,12);
}
jTextField_preview.setFont(new Font(ziti, zixing, daxiao));
}
}
};
MouseListener mouseListener3 = new MouseAdapter()
{
public void mouseClicked(MouseEvent e)
{
if (e.getClickCount() == 1)
{
index = jList3.locationToIndex(e.getPoint());
jList3.setSelectedIndex(index);
jTextField_fontsize.setText(jList3.getSelectedValue().toString());
daxiao = Integer.parseInt(jTextField_fontsize.getText());
jTextField_preview.setFont(new Font(ziti, zixing, daxiao));
}
}
};
jList1.addMouseListener(mouseListener1);
jList2.addMouseListener(mouseListener2);
jList3.addMouseListener(mouseListener3);
jList1.addKeyListener(this);
jList2.addKeyListener(this);
jList3.addKeyListener(this);
add(contentPane);
jButton1.addKeyListener(this);
jButton2.addKeyListener(this);
contentPane.addKeyListener(this);// 注册整个窗体
// pack();
}
public void keyTyped(KeyEvent e)
{// 键入某个键时调用此方法。
}
public void keyReleased(KeyEvent e)
{// 释放某个键时调用此方法。
// 以下代码放在keyPressed()中时会慢了,即实现过程不同步
index = jList1.getSelectedIndex();
if (index == 8 || index >= 11)
{
jTextField_preview.setText("预览中文字体");
}
else
{
jTextField_preview.setText("Preview Font");
}
jTextField_font.setText(jList1.getSelectedValue().toString());
ziti = jTextField_font.getText();
String zip = jList2.getSelectedValue().toString();
jTextField_grapheme.setText(zip);
if (zip.compareTo("常规") == 0)
{
zixing = Font.PLAIN;
}
else if (zip.compareTo("斜体") == 0)
{
zixing = Font.ITALIC;
}
else if (zip.compareTo("粗体") == 0)
{
zixing = Font.BOLD;
}
else if (zip.compareTo("粗斜体") == 0)
{ // 未实现
// zixing=Font.ITALIC.deriveFont(Font.BOLD,12);
}
jTextField_fontsize.setText(jList3.getSelectedValue().toString());
daxiao = Integer.parseInt(jTextField_fontsize.getText());
jTextField_preview.setFont(new Font(ziti, zixing, daxiao));
if ((e.getKeyCode() == 10 && e.getSource() == jButton2) || e.getKeyCode() == 27)
{// 在"取消"按钮下按"Enter"键,或按"Esc"键
jButton2.doClick();
}
else if (e.getKeyCode() == 10)
{
jButton1.doClick();
}
}
public void keyPressed(KeyEvent e)
{// 按下某个键时调用此方法
}
void sfont()
{
textarea.setDragEnabled(true);
textarea.setFont(new Font(ziti, zixing, daxiao));
}
public void actionPerformed(ActionEvent e)
{
if (e.getSource() == jButton1)
{
sfont();
}
else if (e.getSource() == jButton2)
{
setVisible(false);
}
}
public void processWindowEvent(WindowEvent e)
{
super.processWindowEvent(e);
if (e.getID() == WindowEvent.WINDOW_CLOSED)
{
System.exit(0);
}
}
// public void itemStateChanged(ItemEvent e){
// if(e.getSource()==jList1 || e.getSource()==jList2 ||e.getSource()==jList3){
// jTextField_preview.setFont(new Font(ziti, zixing, daxiao));
// }
// }
// class Button1Listener implements ActionListener {
// public void actionPerformed(ActionEvent e){
// sfont();
// }
// }
// class Button2Listener implements ActionListener {
// public void actionPerformed(ActionEvent e){
// hide();
// }
// }
}
// **************************************************************************
// 查找类
class FindJDialog extends JDialog implements ActionListener, KeyListener
{
private final static long serialVersionUID = 1L;
JTextArea textarea;
JButton jButton1 = new JButton();
JButton jButton2 = new JButton();
boolean check = false;// 是否区分大小写,false为否
JLabel jLabel1 = new JLabel();
JTextField jTextField1 = new JTextField();
JCheckBox jCheckBox1 = new JCheckBox("区分大小写(C)", false);
JRadioButton[] teams = new JRadioButton[2];
ButtonGroup jj = new ButtonGroup();
String findstr = "";
public FindJDialog(final JTextArea textarea, JFrame mainDialog)
{
super(mainDialog, "查找", false);
this.textarea = textarea;
try
{
findstr = textarea.getText();
Init();
}
catch (Exception e)
{
e.printStackTrace();
}
}
public void Init() throws Exception
{
this.getContentPane().setLayout(null);
this.setBounds(320, 240, 405, 120);
// this.setTitle("查找");
// this.setModal(true);//此设置将使窗口不能与主窗口并行
jButton1.setText("查找下一个(F)");
jButton1.setBounds(new Rectangle(273, 12, 114, 20));
jButton1.addActionListener(this);
jButton1.setEnabled(false);
// 查找下一个 ---加ALL+F组合键
jButton1.setMnemonic(KeyEvent.VK_F);
jButton2.setText("取消");
jButton2.setBounds(new Rectangle(273, 40, 114, 20));
jButton2.addActionListener(this);
jLabel1.setText("查找内容:");
jLabel1.setBounds(new Rectangle(7, 12, 72, 20));
jTextField1.setBounds(new Rectangle(78, 12, 182, 20));
jTextField1.addActionListener(this);
jTextField1.addKeyListener(this);
jCheckBox1.setBounds(new Rectangle(7, 40, 115, 25));
jCheckBox1.addActionListener(this);
// 区分大小写 ---加ALL+C组合键
jCheckBox1.setMnemonic(KeyEvent.VK_C);
teams[0] = new JRadioButton("向上(U)", false);
teams[0].setBounds(new Rectangle(122, 40, 70, 25));
teams[0].addActionListener(this);
// 向上查询 ---加ALL+U组合键
teams[0].setMnemonic(KeyEvent.VK_U);
teams[1] = new JRadioButton("向下(D)", true);
teams[1].setBounds(new Rectangle(192, 40, 70, 25));
teams[1].addActionListener(this);
// 向下查询 ---加ALL+D组合键
teams[1].setMnemonic(KeyEvent.VK_D);
jj.add(teams[0]);
jj.add(teams[1]);
this.getContentPane().add(jButton1, null);
this.getContentPane().add(jButton2, null);
this.getContentPane().add(jLabel1, null);
this.getContentPane().add(jTextField1, null);
this.getContentPane().add(jCheckBox1, null);
this.getContentPane().add(teams[0], null);
this.getContentPane().add(teams[1], null);
jButton1.addKeyListener(this);
jButton2.addKeyListener(this);
jTextField1.addKeyListener(this);
jCheckBox1.addKeyListener(this);
teams[0].addKeyListener(this);
teams[1].addKeyListener(this);
this.addKeyListener(this);
setResizable(false);
}
public void actionPerformed(ActionEvent e)
{
if (e.getSource() == jTextField1)
{
if (!jTextField1.getText().equals(""))
{
jButton1.setEnabled(true);
}
else
{
jButton1.setEnabled(false);
}
}
else if (e.getSource() == jButton1)
{
find();
}
else if (e.getSource() == jButton2)
{
setVisible(false);
}
else if (e.getSource() == jCheckBox1)
{
check = !check;
JavaNotepad.findnextboolean = check;// 传给主界面
if (!check)
{// 不区分大小写
findstr = findstr.toLowerCase();
}
else
{// 区分大小写
// 重新获取,以防上面已转换成小写的
findstr = textarea.getText();
}
}
}
public void processWindowEvent(WindowEvent e)
{
super.processWindowEvent(e);
if (e.getID() == WindowEvent.WINDOW_CLOSED)
{
System.exit(0);
}
}
public void find()
{
// 初始不区分大小写时要用到下面的判断语句
// //////////////////////////////////////
// 一开始时没有转换是否区分大小写
if (!check)
{// 不区分大小写
findstr = findstr.toLowerCase();
}
else
{// 区分大小写
// 重新获取,以防上面已转换成小写的
findstr = textarea.getText();
}
// //////////////////////////////////////
String text1 = jTextField1.getText();// 要查找的内容
JavaNotepad.findnextstr = text1;// 传给主界面
if (!check)
{// 不区分大小写
text1 = text1.toLowerCase();// 转换成小写
}
int index, i = textarea.getSelectionStart(), t = textarea.getSelectionEnd();
if (teams[0].isSelected())
{
JavaNotepad.findnextupdown = "up";// 向上查找--传给主界面
String ftp = findstr.substring(0, i);
index = ftp.lastIndexOf(text1);
if (index != -1)
{
i = index - 1;
textarea.select(index, index + text1.length());
}
else
{
JOptionPane.showMessageDialog(this, "找不到 " + jTextField1.getText(), "提示",
JOptionPane.INFORMATION_MESSAGE);
}
}
else
{
JavaNotepad.findnextupdown = "down";// 向下查找--传给主界面
index = findstr.indexOf(text1, t);
if (index != -1)
{
t = index + text1.length();
textarea.select(index, index + text1.length());
}
else
{
JOptionPane.showMessageDialog(this, "找不到 " + jTextField1.getText(), "提示",
JOptionPane.INFORMATION_MESSAGE);
}
}
this.repaint();
}
public void keyTyped(KeyEvent e)
{// 键入某个键时调用此方法。
}
public void keyReleased(KeyEvent e)
{// 释放某个键时调用此方法。
if (e.getSource() == jTextField1)
{
if (!jTextField1.getText().equals(""))
{
jButton1.setEnabled(true);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -