嘿,所以我正在尝试创建一个表格,其中有两个按钮(用作标签),当一个按下一个按下一个特定控件的侧面以及按下另一个按钮时,显示了另一组。
我已经变得很好,但是当要创建第二组控件时,我遇到了一个问题,我将如何绘制当前控件(在运行时可以在设计器中)绘制它们(在设计器中)?所以我的问题是,我该如何做这项工作。当前(可能)重要的代码:
private void CheatButton_Click(object sender, EventArgs e)
{
CheatControls(true);
ColorControls(false);
CheatButton.Normalcolor = Color.FromArgb(51, 51, 51);
ColorButton.Normalcolor = Color.FromArgb(61, 61, 61);
}
private void ColorButton_Click(object sender, EventArgs e)
{
CheatControls(false);
ColorControls(true);
CheatButton.Normalcolor = Color.FromArgb(61, 61, 61);
ColorButton.Normalcolor = Color.FromArgb(51, 51, 51);
}
private void CheatControls(bool b)
{
TriggerSwitch.Visible = b;
TriggerLabel.Visible = b;
BhopSwitch.Visible = b;
BhopLabel.Visible = b;
GlowSwitch.Visible = b;
GlowLabel.Visible = b;
RecoilSwitch.Visible = b;
RecoilLabel.Visible = b;
}
private void ColorControls(bool c)
{
}
我的Windows表单应用程序具有可理解的图形
将所有作弊控件放在自定义的UserControl
中,并将所有颜色控件放在其他自定义UserControl
中。您可以在设计器中轻松编辑不同的控件集,并且在代码中,您可以通过设置适当的UserControl
的可见性来更轻松地隐藏/显示它们,而不是单独设置一堆控件的可见性。这是一个创建UserControl
的(公认的)示例:msdn.microsoft.com/en-us/library/aa302342.aspx
在Visual Studio中创建UserControl
时,您可以使用设计器将控件添加到其上。在带有"选项卡"按钮的表单中,您将添加创建的两个UserControl
s的实例。由于UserControl
来自Control
,因此它具有Visible
属性。因此,在您的CheatControls(bool b)
方法中,您的实现将被简化为_myCheatControls.Visible = b;
之类的东西。我还没有看整个内容,但是此视频也可能会有所帮助:youtube.com/watch?v=l5l_q_ji494
您可以使用Xanderui
只需添加一个super button(用作标签按钮),然后单击时显示一个带有您的控件的面板
eg-
private void ShowControlSet(int ControlSet)
{
panel1.visible = false;
panel2.visible = false;
if (ControlSet == 1) panel1.visible = true;
if (ControlSet == 2) panel2.visible = true;
}
// To show a panel use
ShowControlSet(1);
您还可以使用BringToFront()
,而不是使每个面板看不见/可见,但您需要正确锚定或停靠面板
可见性,您可以做的是在隐藏和显示其他按钮
时获得按钮的位置并stw它们。只是设置顶部和左侧位置,确保按钮的尺寸相同。