📄 dssetupdialog.java
字号:
package drawsmart.itsv.menuber;
import java.awt.*;
import javax.swing.*;
import drawsmart.itsv.framework.*;
import javax.swing.event.*;
import drawsmart.itsv.swing.DSExtendLine;
import javax.swing.border.*;
import javax.swing.ButtonGroup;
import javax.swing.JRadioButton;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
/**
* <p>Title: 参数调节窗口</p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2003</p>
* <p>Company: </p>
* @author not attributable
* @version 1.0
*/
public class DSSetupDialog extends JDialog implements ChangeListener, ActionListener
{
//创建字体类
private java.awt.Font myFont=new java.awt.Font("宋体",9,12);
//设置尺寸
private Dimension Dimension=new Dimension(400,400);
//创建面板
private JPanel panel1 = new JPanel();
private JDSExtendDesktopface jDSExtendDesktopface;
//滑块条
private JSlider jSlider1;
//滑块条
private JSlider jSlider2;
//面板的布局器
private GridLayout gridLayout=new GridLayout(4,1);//建立布局器对象
/******************************/
//第一个面板
private JPanel panel2 = new JPanel();
//第一个面板的预览面板
private JPanel panel2_l=new JPanel();
private FlowLayout flowLayout1=new FlowLayout();//建立布局器对象
private BorderLayout borderLayout=new BorderLayout();
//预览的直线
private DSExtendLine dSExtendLine=new DSExtendLine();
/*****************************/
//第二个面板
private JPanel panel3 = new JPanel();
//第二个面板的预览面板
private JPanel panel3_l=new JPanel();
private FlowLayout flowLayout2=new FlowLayout();//建立布局器对象
/******************************/
//样式
//创建边框样式类(顶部)
private Border border1=BorderFactory.createEtchedBorder(Color.white,Color.gray); //建立边框样式类一(颜色)
private TitledBorder titledBorder1= new TitledBorder(border1,"设置组件的边框宽度",0,2,myFont);; //建立对话框边框样式类一
//创建边框样式类(顶部)
private TitledBorder titledBorder2= new TitledBorder(border1,"设置连接器的宽度",0,2,myFont);; //建立对话框边框样式类一
//创建边框样式类(顶部)
private TitledBorder titledBorder3= new TitledBorder(border1,"设置组件的透明",0,2,myFont);; //建立对话框边框样式类一
/******************************/
//第三个面板
private JPanel panel4= new JPanel();
private ButtonGroup buttonGroup=new ButtonGroup();
private JRadioButton jRadioButton1=new JRadioButton();
private JRadioButton jRadioButton2=new JRadioButton();
/****************************************************/
//提交,取消
private JPanel panel5= new JPanel();
private JButton jButton1=new JButton("确定");
private JButton jButton2=new JButton("取消");
public DSSetupDialog(Frame frame, JDSExtendDesktopface jDSExtendDesktopface)
{
super(frame, "设置线宽", true);
this.jDSExtendDesktopface=jDSExtendDesktopface;
jSlider1 = new JSlider(0,20,jDSExtendDesktopface.getFrameWidth());
jSlider2 = new JSlider(0,20,jDSExtendDesktopface.getLineWidth());
jSlider1=iniJSlider(jSlider1);
jSlider1.addChangeListener(this);
jSlider2=iniJSlider(jSlider2);
jSlider2.addChangeListener(this);
panel2_l.setPreferredSize(new Dimension(150,50));
panel2_l.setBorder(BorderFactory.createEtchedBorder(Color.white,Color.gray));
panel3_l.setPreferredSize(new Dimension(150,50));
panel3_l.setBorder(BorderFactory.createEtchedBorder(Color.white,Color.gray));
try
{
jbInit();
pack();
}
catch(Exception ex) {
ex.printStackTrace();
}
}
private void jbInit() throws Exception
{
panel2.setLayout(flowLayout1);
panel3.setLayout(flowLayout2);
//设置长度和宽度
panel1.setPreferredSize(Dimension);
//设置布局器
panel1.setLayout(gridLayout);
this.getContentPane().add(panel1);
//面板
panel1.add(panel2);
panel1.add(panel3);
panel1.add(panel4);
panel1.add(panel5);
//添加第一个面板的内容
panel2.setBorder(titledBorder1);
panel2.add(jSlider1);
//添加第一个面板的预览面板
panel2.add(panel2_l);
//添加第二个面板的内容
panel3.setBorder(titledBorder2);
panel3.add(jSlider2);
//添加第二个面板的预览面板
panel3.add(panel3_l);
//第三个面板的内容
panel4.setBorder(titledBorder3);
jRadioButton1.setText("设置组件为透明");
jRadioButton2.setText("设置组件为不透明");
buttonGroup.add(jRadioButton1);
buttonGroup.add(jRadioButton2);
panel4.add(jRadioButton1);
panel4.add(jRadioButton2);
if(jDSExtendDesktopface.getIsClarity())
{
jRadioButton2.setSelected(true);
}
else
{
jRadioButton1.setSelected(true);
}
//第四个面板
panel5.setLayout(borderLayout);
Panel panel5_1=new Panel();
panel5.add(panel5_1,borderLayout.NORTH);
panel5_1.add(jButton1);
panel5_1.add(jButton2);
JLabel jlabel1=new JLabel("此面板中的信息不列入存盘信息中");
jlabel1.setHorizontalAlignment(JLabel.CENTER);
panel5.add(jlabel1,borderLayout.SOUTH);
jButton1.addActionListener(this);
jButton2.addActionListener(this);
}
//滑块条设置器
private JSlider iniJSlider(JSlider jSlider)
{
jSlider.setPaintTicks(true);
jSlider.setMajorTickSpacing(5);
jSlider.setMinorTickSpacing(1);
jSlider.setPaintLabels(true);
jSlider.setSnapToTicks(true);
//jSlider1.getLabelTable().put(new Integer(20), new JLabel(new Integer(20).toString(), JLabel.CENTER));
//jSlider1.setLabelTable( jSlider1.getLabelTable() );
return jSlider;
}
//实现事件的方法,实现预览方法
public void stateChanged(ChangeEvent e)
{
//
if(e.getSource()==jSlider1)
{
int i=jSlider1.getValue();
//Graphics2D g2D=(Graphics2D)panel2_l.getGraphics();
//int x = panel2_l.getX();
//int y = panel2_l.getY();
//dSExtendLine.setLine(x,y,x+10,y-5);
//g2D.draw(dSExtendLine);
}
}
public void actionPerformed(ActionEvent e) {
//点击了确定按钮
if(e.getSource()==jButton1)
{
//设置组件的边框宽度
jDSExtendDesktopface.setFrameWidth(jSlider1.getValue());
//设置连接器的线宽
jDSExtendDesktopface.setLineWidth(jSlider2.getValue());
//设置是否透明
ButtonModel buttonModel=jRadioButton2.getModel();
jDSExtendDesktopface.setIsClarity(buttonModel.isSelected());
this.setDefaultCloseOperation(this.DISPOSE_ON_CLOSE);
jDSExtendDesktopface.repaint();
this.setVisible(false);
}
//点击了取消按钮
else if(e.getSource()==jButton2)
{
this.setVisible(false);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -