我想创建加载屏幕,直到打开新表单。我有三种形式。
1-登录面板
2-加载Gif表格
3-主菜单
当用户进入主菜单时,此过程至少为2秒。我必须在这个时候向用户显示加载gif。我的代码在这里;
formLoading form_loading = new formLoading();
private void formLogin_Load(object sender, EventArgs e)
{
form_loading.Show();
form_loading.Visible = false;
}
private void btnLogin_Click(object sender, EventArgs e)
{
form_loading.Visible = true;
OpeninFunction();
}
public void OpeninFunction()
{
Application.DoEvents();
fy.Show();
fy.Visible = true;
Thread.CurrentThread.GetApartmentState();
this.Hide();
Thread tr = new Thread(openMainForm);
tr.SetApartmentState(ApartmentState.STA);
tr.Start();
}
public void openMainForm()
{
formMain fas = new formMain(guncelleme);
fas.Visible = true;
fas.Show();
}
此代码看起来很流畅。但是,当我使用btnLogin - >加载gif正在显示屏幕。而MainForm来来往往。我看到0.3秒。 我正在做一些与线程错误有关的事情?
谢谢你们。
如果无法做到这一点,我愿意接受你的建议。