先看代码:
Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load Dim........ If Not My.Computer.FileSystem.FileExists("D:\NGMIM.dat") Then Form3.Show()
Me.Hide() Else FileReader = New StreamReader("D:\NGMIM.dat")
PicLocation = FileReader.ReadLine
Earliest = FileReader.ReadLine
Latest = FileReader.ReadLine
FileReader.Close() End If Label1.Text = "The local photos are between " + Latest + " and " + Earliest + "." .........End Sub我想在Form1开始的时候判断一个文件是否存在,如果不存在则运行form3,并且关掉或者不显示Form1呢。但是如果用Form1.Hide()加上Form3.Show(),现象是form3和Form1都打开了,并且form1在前面,并且Form1_Load里面End If后的语句也都执行了。我还用Form1.Close试了一下,结果两个窗口闪一下都关了。
谁能告诉我怎么办?谢谢了
Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load Dim........ If Not My.Computer.FileSystem.FileExists("D:\NGMIM.dat") Then Form3.Show()
Me.Hide() Else FileReader = New StreamReader("D:\NGMIM.dat")
PicLocation = FileReader.ReadLine
Earliest = FileReader.ReadLine
Latest = FileReader.ReadLine
FileReader.Close() End If Label1.Text = "The local photos are between " + Latest + " and " + Earliest + "." .........End Sub我想在Form1开始的时候判断一个文件是否存在,如果不存在则运行form3,并且关掉或者不显示Form1呢。但是如果用Form1.Hide()加上Form3.Show(),现象是form3和Form1都打开了,并且form1在前面,并且Form1_Load里面End If后的语句也都执行了。我还用Form1.Close试了一下,结果两个窗口闪一下都关了。
谁能告诉我怎么办?谢谢了
public shared sub Main()
if File.Exist("D:\NGMIM.dat") then
Application.Run(new Form1())'存在则启动form1
else
Application.Run(new Form3())'不存在,启动form3
end if
end sub
lz以后去.NET版的VB区去问,这里主要讨论的是VB6的问题。
试过之后再散分。
再问一句(比较弱的问题),VB NET和VB2010比较类似么?
但是VB2002~2010又在不断发展,比如VB2005支持泛型,2008支持LINQ,2010支持动态类型。
在project properties的设置里面选择application type: windows form application后只能选择一个首先运行的form,不能选择main。
我把application type选成concole application后可以选择main,但是各个form之间就不能share变量了
怎么办?
我上面说的就是这个意思:只能选择一个form不能选择main
现在我自己想了个办法--做一个新的form4,在project properties里面的shut down mode选择when last form closed选择首先运行form4,让form4.visible=false,然后把上面1楼给的类似代码放在里面,但是用的是show,不是application.run()(不知道为什么不能用),最后关掉form4。似乎可以用,我再试试:)