扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
vb.net锁定除顶级窗体以外的操作步骤如下:
为武侯等地区用户提供了全套网页设计制作服务,及武侯网站建设行业解决方案。主营业务为成都网站建设、做网站、武侯网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!
1、通过Show方法,用以显示MDIForm或Form对象。
2、当Show在显示无模式窗体时,随后遇到的代码则要执行。
3、当Show在显示模式窗体时,则随后的代码直到该窗体被隐藏或卸载时执行即可。
多线程一般是不推荐用的,因为线程之间如果有共享资源的话会引起竞争,需要加锁处理;而且线程间没有时序关系,所以你在调试中可能会出现异步处理结束顺序与开始处理顺序不一致的情况(我在调试中已经发现该问题)。
针对你提出的这个问题,采用了多线程处理,利用的是BackgroundWorker也就是异步处理控件进行了处理。
代码已经经过调试通过。欢迎交流,如有问题,留下QQ或其他联系方式。
代码如下,并附程序截图。
‘---------------------------------------------------
Imports System.ComponentModel '导入异步控件命名空间
Public Class Form1
Private howmany As Integer = 10
Private AnalysisNumber(0 To howmany - 1) As BackgroundWorker
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
ListBox1.Items.Clear()
creatNewBackgroundWorker()
addHandle()
startWork()
End Sub
Private Sub creatNewBackgroundWorker()
For i As Integer = 0 To AnalysisNumber.Length - 1
AnalysisNumber(i) = New BackgroundWorker
Next
End Sub
Private Sub addHandle()
For i As Integer = 0 To AnalysisNumber.Length - 1
AddHandler AnalysisNumber(i).DoWork, AddressOf AnalysisNumber_DoWork
AddHandler AnalysisNumber(i).RunWorkerCompleted, AddressOf AnalysisNumber_RunWorkerCompleted
Next
End Sub
Private Sub startWork()
For i As Integer = 0 To 9
Dim temp(0 To 9) As Integer
For j As Integer = 1 To 10
temp(j - 1) = 10 * i + j
Next
AnalysisNumber(i).RunWorkerAsync(temp)
Next
End Sub
Private Sub AnalysisNumber_DoWork(ByVal sender As Object, ByVal e As System.ComponentModel.DoWorkEventArgs)
Dim data As Integer()
data = CType(e.Argument, Integer())
Dim temp As Integer
For i As Integer = 0 To data.Length - 1
temp = data(i)
data(i) = temp * temp
Next
e.Result = data
End Sub
Private Sub AnalysisNumber_RunWorkerCompleted(ByVal sender As Object, ByVal e As System.ComponentModel.RunWorkerCompletedEventArgs)
Dim data As Integer()
data = CType(e.Result, Integer())
For i As Integer = 0 To data.Length - 1
ListBox1.Items.Add(data(i))
Next
End Sub
End Class
在你要点击的按钮里,定义一个新窗体的实例,然后用showdialog(),应该就可以吧
步骤一:打开需要制作安装程序的VB.Net项目
点击菜单【文件—新建项目】出现如图01的对话框单击【其他项目类型—安装和部署】选择【安装项目】如图:
步骤二:
双击【My Project】(在“解决方案资源管理器”里面呢),如图所示。
步骤三3:单击【引用】选项卡,查看解决方案的引用项,关注一下.Net类型的引用,本解决方案引用.Net类型的版本是2.0版。查看这个信息直接关系到最终安装文件的大小。
右键单击“解决方案资源管理器”中【Setup1】,选择【添加—项目输出】,选择“主输出”后单击【确定】。
再次右键点击【Setup1】,选择【属性】,跳出对话框。
步骤四:这里的设置可是关键中的关键
步骤五:“选择要安装的系统必备组件”,解决的是运行可执行文件环境的问题运行使用VB.Net编写的程序,必须在系统中安装.Net Framework(也有软件使用虚拟环境运行的)。“查看引用”查到的信息就用到了。如果解决方案只是引用了2.0版本的框架(.Net Framework),默认的系统组件选择。
可以选择框架3.5,建议使用框架2.0,因为框架2.0大小是30M,而框架3.5却有300M之巨.指定系统必备组件的安装设置”这个选项也挺有用。如果编写了一个很简单的程序,想发布(此发布不是前述的发布)出去让大家使用,而又不想拖着少则几十兆多则几百兆的框架的话,那么可以选择第一个互斥按钮。如果担心用户在安装程序时上网不方便,不能从供应 商那儿下载框架的话,那么,只好把框架拖上喽(这也是为什么在能选择框架2.0的时候莫要选择框架3.5的原因,安装程序越小越好,用户如果安装了几百 兆的程序,发现打开的只是个简单的计算器的话,会气的摔键盘的!)
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流