You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C#点击Play按钮隐藏IntroScreen窗体报错:需对象实例调用Control.Hide()

问题修复方案

错误原因:IntroScreen是窗体的类名,而Hide()是实例方法,必须通过具体的窗体对象实例调用,不能直接用类名调用静态方法的方式使用它。

根据你的场景,有两种常用修复方式:


方式一:当前按钮所在窗体就是IntroScreen

如果btnPlay_Click方法是写在IntroScreen窗体类里的,直接用this指代当前窗体实例即可:

private void btnPlay_Click(object sender, EventArgs e)
{
    Form1 f2 = new Form1();
    f2.Show();

    // this指代当前IntroScreen的实例
    this.Hide();
}

方式二:IntroScreen是其他地方创建的实例

如果IntroScreen是在别的代码位置(比如Program.cs)创建的实例,需要获取到该实例的引用再调用Hide()。比如:
假设Program.cs中初始化IntroScreen的代码是:

static void Main()
{
    Application.EnableVisualStyles();
    Application.SetCompatibleTextRenderingDefault(false);
    // 保存IntroScreen的实例引用
    IntroScreen introInstance = new IntroScreen();
    Application.Run(introInstance);
}

如果需要在其他窗体中调用这个实例的Hide(),可以通过构造函数传参的方式传递实例引用,再调用方法。

内容的提问来源于stack exchange,提问作者YoRaN

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 01:09:54