
static UINT indicators[] =
{
ID_SEPARATOR, // status line indicator
ID_INDICATOR_CAPS,
ID_INDICATOR_NUM,
ID_INDICATOR_SCRL,
}
而且在int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)中还有
if (!m_wndStatusBar.Create(this) ||
!m_wndStatusBar.SetIndicators(indicators,
sizeof(indicators)/sizeof(UINT)))
{
TRACE0("Failed to create status bar\n")
return -1 // fail to create
}
那么,只要你在static UINT indicators[]
里面添加ID_SEPARATOR,就会添加一个panel
比如:
static UINT indicators[] =
{
ID_SEPARATOR,
ID_SEPARATOR,
ID_INDICATOR_CAPS,
ID_INDICATOR_NUM,
ID_INDICATOR_SCRL,
}
那么就会出现5个panel
// 先new一个Panel控件出来Panel panel = new Panel()
//设置 这个新Panel的属性
panel.Width=100// 宽度
panel.Height=100// 高度
panel.Location = new Point(0,0)// 相对于左上角的位置
。。。。各种属性
// 将这个新的panel添加到Panel父窗口中
p1.Controls.Add(panel)
可以用add添加组件,然后调用JPanel的remove方法,来删除组件。例如单击某一个组件就移除这个组件,并且添加另外的组件,下面是一个具体的例子:
import java.awt.FlowLayout
import java.awt.event.ActionEvent
import java.awt.event.ActionListener
import javax.swing.JButton
import javax.swing.JFrame
import javax.swing.JPanel
import javax.swing.JTextField
public class WinTest3
{
public static void main(String[] args)
{
JFrame frame = new JFrame()
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)
frame.setExtendedState(JFrame.MAXIMIZED_BOTH)
frame.setLayout(new FlowLayout())
JPanel panel = new JPanel()
JButton button = new JButton("change")
panel.add(button)
JTextField f = new JTextField(20)
ActionListener listener = new ChangeListener(button,panel,f)
button.addActionListener(listener)//注册监听器
frame.add(panel)
frame.setVisible(true)
}
}
/*监听器,当单击按钮时,移除button按钮,加入text文本框*/
class ChangeListener implements ActionListener
{
JButton button
JPanel panel
JTextField text
public ChangeListener(JButton button, JPanel panel, JTextField text)
{
super()
this.button = button
this.panel = panel
this.text = text
}
@Override
public void actionPerformed(ActionEvent e)
{
if("change".equals(e.getActionCommand()))
{
panel.remove(button)
panel.add(text)
panel.updateUI()
panel.repaint()
}
}
}
备注:需要特别注意的是移除和添加组件之后,记得重画组件。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)