我有一个windows应用程序,它将一些信息写入卡的Track1和Track2。现在我想完成的是,当用户点击按钮时,一旦用户刷卡消息框消失,消息框就会出现“等待滑动”。C#消息框 - 自动消失
我试图用do while循环但它不会看到我的功能我打电话
例如:
do{
readcard();
}while (messagebox.show());
这并不能在所有的工作。有关我如何完成此任务的任何建议。
由于
我有一个windows应用程序,它将一些信息写入卡的Track1和Track2。现在我想完成的是,当用户点击按钮时,一旦用户刷卡消息框消失,消息框就会出现“等待滑动”。C#消息框 - 自动消失
我试图用do while循环但它不会看到我的功能我打电话
例如:
do{
readcard();
}while (messagebox.show());
这并不能在所有的工作。有关我如何完成此任务的任何建议。
由于
MessageBox.Show
示出了一个消息并等待用户将其关闭。
如果你想显示一些不等待用户的东西,但是通过程序控制,你需要自己写。在Windows窗体,你会创建一个Form
,或许与WinForms的设计师,呼叫Show
上的一个实例,以显示它,然后Hide
事后隐藏
然而,Windows应用程序和写在最后的任何应用程序。 .. 10年或20年......是事件驱动所以你如果用户参与你不应该使用这样的循环(与while
)。
退房: http://en.wikipedia.org/wiki/Event-driven_programming http://dotnetfirez.blogspot.com/2010/05/winforms.html https://softwareengineering.stackexchange.com/questions/99842/vs2010-winform-designer-to-learn-or-bottom-up-approach
和谷歌的一个起点。
创建一个基本的小尺寸表单。将一个标签并输入信息there.Make形式的指定startPosition属性为中心
呼叫的形式实例
AutomaticDisappearPopup pop = new AutomaticDisappearPopup();
pop.Show();
WaitSomeTime(pop);
定义waitSomeTime方法用于显示时间,然后消失在不中断主线程
public async void WaitSomeTime(Form item)
{
await Task.Delay(3000);
item.Close();
}
是的,MessageBox.show阻止主线程,所以没有其他代码可以运行关闭它,阅读刷卡必须在分离e线程,同时消息框打开。 – Will03uk