C 在乙個視窗中開啟另乙個視窗,同時關閉該視窗

2021-06-06 09:54:57 字數 686 閱讀 1135

c#程式設計時,經常會遇到處理兩個或多個視窗的問題。以登入視窗為例,當登入視窗登入驗證成功後,要進入主視窗,此時需要關閉登入視窗,這時候用this.close()是不可以的。因為program.cs中  

1. 先隱藏登入視窗, 然後在主視窗關閉後將登入視窗關閉

這種方法只是把登入視窗隱藏了,主程式還在執行。實現方法為:

登入視窗**:

if (user.checkin())

else

登入成功後,通過建構函式傳入登入視窗的引數到主視窗,這樣在主視窗裡可以直接對登入視窗操作

form1 loginform = null;

// 在主視窗新增帶參的建構函式

public mainform(form1 myform)

主視窗關閉後,關閉登入視窗

private void mainform_formclosed(object sender, formclosedeventargs e)

2. 將主視窗程式設為主執行程式,

修改program.cs

這樣系統啟動時,執行的是主視窗程式。然後在主視窗載入時去呼叫登入視窗就可以了。

private void mainform_load(object sender, eventargs e)

登入視窗**為:

if (user.checkin())

else

一視窗卻換不到另乙個視窗中,不報錯,

一視窗卻換不到另乙個視窗中,不報錯,delphi windows sdk api unit z login inte ce uses windows,messages,sysutils,variants,classes,graphics,controls,forms,dialogs,stdctrls...

開啟乙個新視窗

在新視窗中開啟連線的兩種方法 乙個叫opener的全域性物件 如果父頁面和新開視窗中的頁面是不同網域名稱的,瀏覽器會禁止新視窗訪問opener中的內容。但是有乙個操作除外 可以通過window.opener.location newurl來重寫父頁面的url,即使與父視窗的頁面不同域。利用這個方式,...

Spring 在乙個事務中開啟另乙個的事務

什麼是事務?可以參考我的這篇部落格!spring boot 怎麼使用spring的事務控制機制?可以參考我的這篇部落格!通常的情況下,一般的事務直接在service類上新增 transactional註解,spring就會幫我們替所有方法自動生成事務。但是在某些情況下,很少出現的。我們希望在乙個方法...