vb.net窗体关闭不了 vb窗口不见了

vb.net 窗口打开与关闭问题.

这是由于你的启动类是form1,也就是说form1是你的主函数,你关闭form1就相当于关闭程序;

创新互联成立于2013年,是专业互联网技术服务公司,拥有项目做网站、成都网站设计网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元黄岛做网站,已为上家服务,为黄岛各地企业和个人服务,联系电话:13518219792

如果你只希望弹出form2的时候form1隐藏,可以再form2.show()之后调用form1.hide(),之后关闭form2的时候再关闭form1就可以达到你想要的效果了;

再有一种做法就是你需要一个主函数类,使用它调用form1跟form2,这样关闭哪一个都不会影响另一个。

如何VB程序上的窗口关闭按纽失效?

顶你啊

窗体的

MaxButton

属性设为False

不就没最大化了

或者设置

BorderStyle属性

===================================

Private

Declare

Function

GetSystemMenu

Lib

"user32"

(ByVal

hwnd

As

Long,

ByVal

bRevert

As

Long)

As

Long

Private

Declare

Function

RemoveMenu

Lib

"user32"

(ByVal

hMenu

As

Long,

ByVal

nPosition

As

Long,

ByVal

wFlags

As

Long)

As

Long

Private

Const

MF_REMOVE

=

H1000

Private

Const

SC_CLOSE

=

HF060

Sub

Disabled(ChWnd

As

Long)

'设置窗体关闭按钮不可用的子过程

Dim

hMenu,

hendMenu

As

Long

Dim

c

As

Long

hMenu

=

GetSystemMenu(ChWnd,

0)

RemoveMenu

hMenu,

SC_CLOSE,

MF_REMOVE

End

Sub

Private

Sub

Form_Load()

Disabled

Me.hwnd

'调用子过程

End

Sub

VB.NET 关闭窗体的问题

this.close() 只是关掉,没有释放,不对 me.close() 应该释放一下 me.Dispose() 给分吧、

vb.net窗体关闭的问题!

Private Sub frmNotepad_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing

Call subexit()

End

End Sub

Sub subexit()

Dim frmNew As frmNotepad

frmNew = ActiveForm

If frmNew.Text = "未定标题 - 记事本" Then

If frmNew.rtb.Text = "" Then

Else

Dim result As New MsgBoxResult 'result提示对话框yes,no,cancel

result = MsgBox("未定标题 文件的文字已经改变。" Chr(10) Chr(10) "想保存文件吗?", MsgBoxStyle.YesNoCancel + MsgBoxStyle.Exclamation, "记事本")

If result = MsgBoxResult.Yes Then 'result.Yes表示保存,清空内容,打开新页面

Dim fileSave As New SaveFileDialog

Dim re As New DialogResult 're提示对话框OK,cancel

fileSave.FileName = "*.txt"

fileSave.Filter = "文本文档(*.txt)|*.txt|所有文件|*.*"

re = fileSave.ShowDialog()

If re = DialogResult.OK Then 're.OK表示成功保存,清空内容,打开新页面

filename = fileSave.FileName

Dim fstream As FileStream

Dim sw As StreamWriter

Try

'frmNew.Text = filename.Substring(filename.LastIndexOf("\") + 1) "- 记事本"

fstream = New FileStream(filename, FileMode.Create, FileAccess.ReadWrite)

sw = New StreamWriter(fstream, System.Text.Encoding.Default)

sw.BaseStream.Seek(0, SeekOrigin.End)

sw.Write(rtb.Text)

sw.Flush()

Catch ex As Exception

MsgBox("保存文件失败")

Finally

sw.Close()

End Try

ElseIf re = DialogResult.Cancel Then 're.cancel表示不保存,不改变任何结果

End If

ElseIf result = MsgBoxResult.No Then 'result.no表示不保存,清空内容

rtb.Text = ""

End If

End If

Else

If rtb.Text.Compare(rtb.Text, compareStr) 0 Then

Dim result As New MsgBoxResult

result = MsgBox(filename + " 文件的文字已经改变。" Chr(10) Chr(10) "想保存文件吗?", MsgBoxStyle.YesNoCancel + MsgBoxStyle.Exclamation, "记事本")

If result = MsgBoxResult.Yes Then

Dim fstream As FileStream

Dim sw As StreamWriter

Try

'frmNew.Text = filename.Substring(filename.LastIndexOf("\") + 1) "- 记事本"

fstream = New FileStream(filename, FileMode.Create, FileAccess.ReadWrite)

sw = New StreamWriter(fstream, System.Text.Encoding.Default)

sw.BaseStream.Seek(0, SeekOrigin.End)

sw.Write(rtb.Text)

sw.Flush()

Catch ex As Exception

MsgBox("保存文件失败")

Finally

sw.Close()

End Try

ElseIf result = MsgBoxResult.No Then

rtb.Text = ""

End If

End If

End If

End Sub

VB.NET 窗体关闭问题 用的是vs2013

首先这个应该放在 FormClosing 事件中。

其次,因为你 Else 之后没有忽略窗体关闭的请求。

应该再加一句 e.Cancel = True,表示告诉系统,我取消关闭窗体这个操作了。

vb.net怎么样实现点击窗体上一个铵钮就关闭窗体的功能?

如果这个窗体是主窗体的话,你只能隐藏,因为主窗体关闭的话程序就退出了。

如果不是主窗体,可以用Form1.Close来关闭。

如果实在是想关闭,就得把程序启动设为sub

main而不是form。

再由sub

main来启动窗体,这样就没有主窗体了。


本文题目:vb.net窗体关闭不了 vb窗口不见了
文章源于:http://ybzwz.com/article/hepcdg.html