创建新表单后,我无法在程序中调用它
本文关键字:程序 调用 新表单 表单 创建 | 更新日期: 2023-09-27 18:34:49
我不知道这个错误是如何产生的。这是我的代码和错误。我在解决方案资源管理器中创建了一个新窗体,并在主窗体中编写了这些代码。我确定我在下面使用的命中框是正确的。
public partial class HomePageForm : Form
{
OptionsPageForm frmOptions;
}
private void HomePageForm_MouseClick(object sender, MouseEventArgs e)
{
if (this.homePageOptionsButtonHitBox.Contains(e.Location))
{
this.Enabled = false;
frmOptions = new OptionsPageForm(this);
frmOptions.Show();
}
}
这些是我在"frmOptions"中编写的代码 - 这就是我想调用的形式。
public partial class OptionsPageForm : Form
{
OptionsPageForm frmHomePage;
public OptionsPageForm(HomePageForm frmCreator)
{
InitializeComponent();
frmHomePage =frmCreator;
}
}
Visual Studio 给出的错误是:
无法隐式转换类型"我的Application_。主页表单"到"我的Application_。选项页面表单"。
这是我在此应用程序中所做的另一个表单调用,它与我对frmOptionsPage
调用的结构相同,但它运行良好。
public partial class HomePageForm : Form
{
GamePageForm frmGame;
}
private void HomePageForm_MouseClick(object sender, MouseEventArgs e)
{
if (this.homePageStartButtonHitBox.Contains(e.Location))
{
this.Hide();
frmGame = new GamePageForm(this);
frmGame.Show();
}
}
(以游戏页面形式(
public partial class GamePageForm : Form
{
HomePageForm frmHomePage;
public GamePageForm(HomePageForm frmCreator)
{
InitializeComponent();
frmHomePage = frmCreator;
}
}
我现在真的很想得到一些帮助,拜托。
我认为您需要像这样将鼠标单击事件处理程序移动到类中
public partial class HomePageForm : Form
{
GamePageForm frmGame;
private void HomePageForm_MouseClick(object sender, MouseEventArgs e)
{
if (this.homePageStartButtonHitBox.Contains(e.Location))
{
this.Hide();
frmGame = new GamePageForm(this);
frmGame.Show();
}
}
}