想要达到的效果
点击关于窗体(aboutbox窗体)的logoPictureBox控件修改子窗体frmmodily的button的Visible属性为true目的是隐藏这个功能,但通过一个方法可以激活这个功能。
注:frmmodily的父窗体为MDIParent1
点击关于窗体(aboutbox窗体)的logoPictureBox控件修改子窗体frmmodily的button的Visible属性为true目的是隐藏这个功能,但通过一个方法可以激活这个功能。
注:frmmodily的父窗体为MDIParent1
解决方案 »
- 多线程Thread是否可以传参数?可以的话应该怎么传?希望哪位高手能指导下。在线等。
- 关闭程序时提示内存不能为读,但单步调试时不会报。
- " @ "什么意思
- 关于导出Execl的问题(怎么样在Excel表头填充中文列名)
- 控件大小随窗体变动成比例变动!!
- 救救我!!!用PrintPreviewDialog打印组件
- 数据完整性维护的问题<不安吧,程序员们,如果你回头看看自己写的代码的话>(UP可能有分)
- WPF中的超链接和button的click事件可以兼顾嘛?
- 怎样在新建的Windows应用程序中创建配置文件?
- 这样获取缓冲区里的密码?
- winform combobox筛选DataGridView控件里面的数据?
- 递归算法求部门以及其下属部门的人数问题
//frmmodily 窗体
public partial class frmmodily : Form
{
//静态变量
static bool btvs; //将aboutbox传的值赋给静态变量btvs
public bool Btvs
{
get { return btvs; }
set { btvs = value; }
} //静态变量,只是为了标识是否触发了aboutbox的logoPictureBox_Click事件
static bool pcclick; public bool Pcclick
{
get { return pcclick; }
set { pcclick = value; }
} public frmmodily()
{
InitializeComponent();
} private void frmmodily_MouseMove(object sender, MouseEventArgs e)
{
//触发,执行一次
if (pcclick == true)
{
//为按钮的Visible赋值
button1.Visible = btvs;
pcclick = false;
}
} /// <summary>
/// 为了区分下button1.Visible值已经改变
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void frmmodily_Load(object sender, EventArgs e)
{
button1.Visible = false;
}
}//aboutbox 窗体
public partial class aboutbox : Form
{
public aboutbox()
{
InitializeComponent();
} /// <summary>
/// 弹出frmmodily窗体
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button1_Click(object sender, EventArgs e)
{
frmmodily fd = new frmmodily();
fd.Show();
} /// <summary>
/// 为frmmodily窗体上的公开变量Btvs赋值,同时修改触发属性
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void logoPictureBox_Click(object sender, EventArgs e)
{
frmmodily fd = new frmmodily();
fd.Btvs = true;
fd.Pcclick = true;
}
}修改了下,楼主自己试下
//frmmodily 窗体
public partial class frmmodily : Form
{
//静态变量
static bool btvs; //将aboutbox传的值赋给静态变量btvs
public bool Btvs
{
get { return btvs; }
set { btvs = value; }
} //静态变量,只是为了标识是否触发了aboutbox的logoPictureBox_Click事件
static bool pcclick; public bool Pcclick
{
get { return pcclick; }
set { pcclick = value; }
} public frmmodily()
{
InitializeComponent();
} private void frmmodily_MouseMove(object sender, MouseEventArgs e)
{
//触发,执行一次
if (pcclick == true)
{
//为按钮的Visible赋值
button1.Visible = btvs;
pcclick = false;
}
} /// <summary>
/// 为了区分下button1.Visible值已经改变
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void frmmodily_Load(object sender, EventArgs e)
{
button1.Visible = false;
}
}//aboutbox 窗体
public partial class aboutbox : Form
{
public aboutbox()
{
InitializeComponent();
} /// <summary>
/// 弹出frmmodily窗体
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button1_Click(object sender, EventArgs e)
{
frmmodily fd = new frmmodily();
fd.Show();
} /// <summary>
/// 为frmmodily窗体上的公开变量Btvs赋值,同时修改触发属性
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void logoPictureBox_Click(object sender, EventArgs e)
{
frmmodily fd = new frmmodily();
fd.Btvs = true;
fd.Pcclick = true;
}
}修改了下,楼主自己试下
是这样,先打开frmmodily窗体,
frmmodoly窗体在aboutbox窗体打开之前就已经打开了