📄 comptitledpane.java
字号:
/* (swing1.1.1) */
package zb.swing;
import java.awt.*;
import javax.swing.*;
import zb.swing.border.*;
/**
* @version 1.0 08/12/99
*/
public class CompTitledPane
extends JPanel {
protected CompTitledBorder border;
protected JComponent component;
protected JPanel panel;
protected boolean transmittingAllowed;
protected StateTransmitter transmitter;
public CompTitledPane() {
this(new JLabel("Title"));
}
public CompTitledPane(JComponent component) {
this.component = component;
border = new CompTitledBorder(component);
setBorder(border);
panel = new JPanel();
setLayout(null);
add(component);
add(panel);
transmittingAllowed = false;
transmitter = null;
}
public JComponent getTitleComponent() {
return component;
}
public void setTitleComponent(JComponent newComponent) {
remove(component);
add(newComponent);
border.setTitleComponent(newComponent);
component = newComponent;
}
public JPanel getContentPane() {
return panel;
}
public void doLayout() {
Insets insets = getInsets();
Rectangle rect = getBounds();
rect.x = 0;
rect.y = 0;
Rectangle compR = border.getComponentRect(rect, insets);
component.setBounds(compR);
rect.x += insets.left;
rect.y += insets.top;
rect.width -= insets.left + insets.right;
rect.height -= insets.top + insets.bottom;
panel.setBounds(rect);
}
public void setTransmittingAllowed(boolean enable) {
transmittingAllowed = enable;
}
public boolean getTransmittingAllowed() {
return transmittingAllowed;
}
public void setTransmitter(StateTransmitter transmitter) {
this.transmitter = transmitter;
}
public StateTransmitter getTransmitter() {
return transmitter;
}
public void setEnabled(boolean enable) {
super.setEnabled(enable);
if (transmittingAllowed && transmitter != null) {
transmitter.setChildrenEnabled(enable);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -