C#.NET如何设置启动窗体 [散分]

cy_paul 2010-11-27 05:08:58
private void Form2_Load(object sender, EventArgs e)
{
Form1 _启动窗体 = new Form1();
_启动窗体.Show();// 先把启动窗体Show出来。
Application.DoEvents();

System.Threading.Thread.Sleep(3000);//此处可用加载数据集、权限列表等代码代替!!
_启动窗体.Close();//加载完数据集后,把启动窗体关掉。
}

VB。NET可通过项目属性,方便的设置启动窗体,但C#就要自己写一个了,试了一下这样是可以的(参见上图代码)。
一 新建一个项目,并增加二个窗体Form1,Form2

假定把Form1 做为启动窗体,而Form2是主窗体。在Form2的Load 事件中执行上述代码。即可实现启动窗体的效果。也无须用定时器控制启动窗体的存活时间。
...全文
270 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
cy_paul 2010-11-29
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 kongdelu2008 的回复:]
引用 6 楼 wuyq11 的回复:
Program.cs里修改
Application.Run(New Form1());
如从Form2启动
Application.Run(New Form2());


正确。。
[/Quote]
程序需要启动窗体来“掩护”主窗体的加载啊,主窗体加载时要验证权限、设定可访问的菜单,获取系统参数等等。当然你的代码也能实现。还可以加上IF 来控制。
if (lenth("美女")==4)
Application.Run(New Form1());
else
Application.Run(New Form2());
kongdelu2008 2010-11-27
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 wuyq11 的回复:]
Program.cs里修改
Application.Run(New Form1());
如从Form2启动
Application.Run(New Form2());
[/Quote]

正确。。
sfmmc 2010-11-27
  • 打赏
  • 举报
回复
hAO好好
threenewbee 2010-11-27
  • 打赏
  • 举报
回复
C#对.NET代码有更好的控制能力。

Main()提供了程序的入口,你可以随心所欲控制程序从哪里开始。所以很多人反而不适应VB.NET那种。
colorall 2010-11-27
  • 打赏
  • 举报
回复
其实LZ说的是这个意思,是要SplashScreen的那种启动窗体的,如下面的代码FrmMain是主窗体,FrmSplashScreen就是启动窗体,就实现了VB.NET的功能。

using System;
using System.Windows.Forms;
using Microsoft.VisualBasic.ApplicationServices;

namespace Colorall
{
static class Program
{
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);

My.Application.Run(new string[] { "" });
}
}
class MyApplication : WindowsFormsApplicationBase
{
public MyApplication()
: base(AuthenticationMode.Windows)
{
EnableVisualStyles = true;
ShutdownStyle = ShutdownMode.AfterMainFormCloses;
}

protected override void OnCreateMainForm()
{
MainForm = new FrmMain();
}

protected override void OnCreateSplashScreen()
{
SplashScreen = new FrmSplashScreen();
}
}
static class My
{
private static MyApplication _app=new MyApplication();
public static MyApplication Application
{
get
{
return _app;
}
}
}
}

queen25 2010-11-27
  • 打赏
  • 举报
回复
....
wuyq11 2010-11-27
  • 打赏
  • 举报
回复

Program.cs里修改
Application.Run(New Form1());
如从Form2启动
Application.Run(New Form2());
zhengzheng2009 2010-11-27
  • 打赏
  • 举报
回复
Application.Run(Form1);
兔子-顾问 2010-11-27
  • 打赏
  • 举报
回复
找到Program.cs文件
找到Main方法
修改这里
Application.Run的参数为实例化你需要的启动窗体即可。
FULIQIANG1 2010-11-27
  • 打赏
  • 举报
回复
╮(╯▽╰)╭,没分啦,想问问题也不能,咋办啊
lihaoran8577 2010-11-27
  • 打赏
  • 举报
回复

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧