vb.net窗體詳解 vbmdi窗體

關(guān)于VB.NET窗體的問題!

你把代碼寫在 Activated 事件中試驗(yàn)一下,寫在 Load 事件中肯定不能隱藏form1窗體。

成都創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司一直秉承“誠信做人,踏實(shí)做事”的原則,不欺瞞客戶,是我們最起碼的底線! 以服務(wù)為基礎(chǔ),以質(zhì)量求生存,以技術(shù)求發(fā)展,成交一個客戶多一個朋友!專注中小微企業(yè)官網(wǎng)定制,網(wǎng)站制作、成都做網(wǎng)站,塑造企業(yè)網(wǎng)絡(luò)形象打造互聯(lián)網(wǎng)企業(yè)效應(yīng)。

Private Sub Form1_Activated(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Activated

Me.Hide()

Form2.Show()

End Sub

至于一關(guān)閉form1整個程序就會關(guān)閉,是因?yàn)槟愕膄orm1是主窗體,你找到Application.Designer.vb這個文件,默認(rèn)應(yīng)該都有,這里面有這樣的代碼

Global.System.Diagnostics.DebuggerStepThroughAttribute() _

Protected Overrides Sub OnCreateMainForm()

Me.MainForm = Global.WindowsApplication1.Form1

End Sub

從代碼Me.MainForm = Global.WindowsApplication1.Form1中可以看出Form1()是主窗體,如果你想改變主窗體,那么只要修改對應(yīng)的Form。

VB.NET中的TextBox控件詳解

TextBox組件(文本框組件)是一種常用的 也是比較容易掌握的組件 應(yīng)用程序主要使用它來接收使用者于輸入文字信息 在前面內(nèi)容中已經(jīng)或多或少的接觸到TextBox組件 本節(jié)就來詳細(xì)探討一下Visual 中TextBox組件的使用方法 一 TextBox組件 TextBox類 當(dāng)我們使用Visual Basic Net集成開發(fā)環(huán)境開發(fā)應(yīng)用程序時 在從【工具箱】的【W(wǎng)indows窗體】選項(xiàng)卡中向Form 的設(shè)計(jì)窗體拖入一個TextBox組件的后 我們可能并沒有感覺到即使時這樣一個簡單的操作 Visual Basic Net都做了很多幕后工作 主要工作和步驟如下 首先實(shí)例化System Windows Forms TextBox類 并根據(jù)拖動到窗體的位置和形狀分別設(shè)定TextBox實(shí)例的各個屬性 我們看到的設(shè)計(jì)窗體 其實(shí)是Form 類的一個實(shí)例 而Form 類首先是從System Windows Forms Form類繼承而來 Form 類中的成員根據(jù)使用者往窗體中拖入的組件不同而不同 各個成員通過Add或AddRange方法加入到Form 中 這樣拖入的組件才能夠顯示在設(shè)計(jì)窗體上 以上這些都完全不同于以前Visual Basic 通過上述步驟 我們不難得到TextBox組件和TextBox類之間的關(guān)系 TextBox組件是命名空間System Windows Forms中的TextBox類的實(shí)例 在從【工具箱】的【W(wǎng)indows窗體】選項(xiàng)卡中拖入窗體的任一組件 都是 Net框架類庫—— Net Framework SDK中封裝的某一個類的實(shí)例 通過上述步驟也不難看出 Visual Basic Net的確才是真正的面向?qū)ο螅∣OP)的開發(fā)語言 二 TextBox類的成員 TextBox組件使用雖然比較簡單 但TextBox類的構(gòu)成成員卻是非常的豐富 在一般性的編程中 主要涉及到三類 屬性 方法和事件 表 表 和表 分別是TextBox類的常用屬性 方法和事件及其簡單說明 屬性 說明 AcceptsReturn 指示在多行TextBox組件中按ENTER鍵時 是在組件中創(chuàng)建一行新文本還是激活窗體的默認(rèn)按鈕 AcceptsTab 該值指示在多行文本框組件中按TAB鍵時 是否在組件中鍵入一個TAB字符 而不是按選項(xiàng)卡的順序?qū)⒔裹c(diǎn)移動到下一個組件 AllowDrop 獲取或設(shè)置一個值 該值指示組件是否可以接受用戶拖放到它上面的數(shù)據(jù) Anchor 獲取或設(shè)置組件的哪些邊緣錨定到其容器邊緣 BackColor 獲取或設(shè)置組件的背景色 BackgroundImage 獲取或設(shè)置在組件中顯示的背景圖像 BorderStyle 獲取或設(shè)置文本框組件的邊框類型 Bottom 獲取組件的下邊緣與其容器的工作區(qū)的上邊緣之間的距離 CanFocus 獲取一個值 該值指示組件是否可以接收焦點(diǎn) CanSelect 獲取一個值 該值指示是否可以選中組件 CanUndo 獲取一個值 該值指示用戶在文本框組件中能否撤消前一操作 CharacterCasing 獲取或設(shè)置TextBox組件是否在字符鍵入時修改其大小寫格式 ContextMenu 獲取或設(shè)置與組件關(guān)聯(lián)的快捷菜單 Reated 獲取一個值 該值指示組件是否已經(jīng)創(chuàng)建 Cursor 獲取或設(shè)置當(dāng)鼠標(biāo)指針位于組件上時顯示的光標(biāo) DataBindings 為該組件獲取數(shù)據(jù)綁定 Dock 獲取或設(shè)置組件停靠到父容器的哪一個邊緣 Enabled 獲取或設(shè)置一個值 該值指示組件是否可以對用戶交互作出響應(yīng) Focused 獲取一個值 該值指示組件是否有輸入焦點(diǎn) Font 獲取或設(shè)置組件顯示的文字的字體 ForeColor 獲取或設(shè)置組件的前景色 MaxLength 獲取或設(shè)置用戶可以在文本框組件中最多鍵入的字符數(shù) Multiline TRUE/FALSE 該值指示它是否為多行文本框組件 PasswordChar 獲取或設(shè)置字符 該字符用于屏蔽單行 ScrollBars 獲取或設(shè)置哪些滾動條應(yīng)出現(xiàn)在多行TextBox 組件中 Text 獲取或設(shè)置文本框中的當(dāng)前文本 TextAlign 設(shè)置文本框內(nèi)文本得對齊方式 TextLength 獲取組件中文本的長度  表 TextBox類的常用屬性及其說明 方法 說明 AppendText 向文本框的當(dāng)前文本追加文本 Clear 從文本框控件中清除所有文本 ClearUndo 從該文本框的撤消緩沖區(qū)中清除關(guān)于最近操作的信息 Copy 將文本框中的當(dāng)前選定內(nèi)容復(fù)制到剪貼板 Cut 將文本框中的當(dāng)前選定內(nèi)容移動到剪貼板中 DoDragDrop 開始拖放操作 Focus 為控件設(shè)置輸入焦點(diǎn) GetChildAtPoint 檢索位于指定坐標(biāo)處的子控件 GetNextControl 按照子控件的Tab鍵順序向前或向后檢索下一個控件 Hide 對用戶隱藏控件 Paste 用剪貼板的內(nèi)容替換文本框中的當(dāng)前選定內(nèi)容 PointToClient 將指定屏幕點(diǎn)的位置計(jì)算成工作區(qū)坐標(biāo) PointToScreen 將指定工作區(qū)點(diǎn)的位置計(jì)算成屏幕坐標(biāo) ResetBindings 將DataBindings屬性重置為其默認(rèn)值 Select 選擇控件中的文本 SelectAll 選定文本框中的所有文本 SelectNextControl 激活下一個控件 Show 向用戶顯示控件 SuspendLayout 臨時掛起控件的布局邏輯 Undo 撤消文本框中的上一個編輯操作

表 TextBox類的常用方法及其說明

事件 說明 Click 在單擊文本框時發(fā)生 CursorChanged 當(dāng) Cursor 屬性的值更改時發(fā)生 DoubleClick 在雙擊控件時發(fā)生 DragDrop 在完成拖放操作時發(fā)生 DragEnter 在將對象拖入控件的邊界時發(fā)生 DragLeave 在將對象拖出控件的邊界時發(fā)生 DragOver 在將對象拖到控件的邊界上發(fā)生 EnabledChanged Enabled 屬性值更改后發(fā)生 Enter 進(jìn)入控件時發(fā)生 GiveFeedback 在執(zhí)行拖動操作期間發(fā)生 GotFocus 在控件接收焦點(diǎn)時發(fā)生 KeyDown 在控件有焦點(diǎn)的情況下按下鍵時發(fā)生 KeyPress 在控件有焦點(diǎn)的情況下按下鍵時發(fā)生 KeyUp 在控件有焦點(diǎn)的情況下釋放鍵時發(fā)生 Leave 在輸入焦點(diǎn)離開控件時發(fā)生 LostFocus 當(dāng)控件失去焦點(diǎn)時發(fā)生 MouseDown 當(dāng)鼠標(biāo)指針位于控件上并按下鼠標(biāo)鍵時發(fā)生 MouseEnter 在鼠標(biāo)指針進(jìn)入控件時發(fā)生 MouseHover 在鼠標(biāo)指針懸停在控件上時發(fā)生 MouseLeave 在鼠標(biāo)指針離開控件時發(fā)生 MouseMove 在鼠標(biāo)指針移到控件上時發(fā)生 MouseUp 在鼠標(biāo)指針在控件上并釋放鼠標(biāo)鍵時發(fā)生 MouseWheel 在移動鼠標(biāo)輪并且控件有焦點(diǎn)時發(fā)生 Move 在移動控件時發(fā)生 Paint 在重繪控件時發(fā)生 Resize 在調(diào)整控件大小時發(fā)生

TextBox類的常用事件及其說明當(dāng)然TextBox類除了上述的屬性 方法和事件 還有很多屬性 方法和事件 和很多受保護(hù)的方法和受保護(hù)的屬性 由于它們使用的幾率較少和篇幅所限 就不能一一介紹了 感興趣的朋友可以參閱相關(guān)資料

三.掌握TextBox組件的基本用法 由于TextBox類的成員實(shí)在太豐富 一個示例要想介紹上述所有的方法 屬性和事件是不可能 在下面介紹的示例中 將突出介紹在Visual 集成開發(fā)環(huán)境下通過對設(shè)定不同的屬性值實(shí)現(xiàn)三種常見的TextBox組件式樣 以及TextBox組件的方法的調(diào)用方法和在Visual Basic Net集成開發(fā)環(huán)境中如何加入TextBox組件不同事件對應(yīng)的處理代碼 讓各位更加熟悉TextBox類和Visual Basic Net開發(fā)環(huán)境 下面是TextBox示例的具體實(shí)現(xiàn)步驟 啟動Visual Studio Net 選擇菜單【文件】|【新建】|【項(xiàng)目】后 彈出【新建項(xiàng)目】對話框 將【項(xiàng)目類型】設(shè)置為【Visual Basic項(xiàng)目】 將【模板】設(shè)置為【W(wǎng)indows應(yīng)用程序】 在【名稱】文本框中輸入【TextBox組件】 在【位置】的文本框中輸入【E:\項(xiàng)目】 然后單擊【確定】按鈕 這樣在 E:\VS NET項(xiàng)目 目錄中就產(chǎn)生了名稱為 TextBox組件 的文件夾 并在里面創(chuàng)建了名稱為 TextBox組件 的項(xiàng)目文件 把Visual Studio Net的當(dāng)前窗口切換到【Form VB(設(shè)計(jì))】窗口 并從【工具箱】中的【W(wǎng)indows窗體組件】選項(xiàng)卡中往Form 窗體中拖入下列組件 并執(zhí)行相應(yīng)操作 三個Label組件 三個TextBox組件 分別為TextBox TextBox 和TextBox 按照表 中數(shù)值來設(shè)定設(shè)定組件的主要屬性 請注意TextBox組件中的屬性設(shè)定值

表 【TextBox組件】項(xiàng)目窗體中各組件的主要屬性設(shè)定數(shù)值表

按照表 各值設(shè)定后的TextBox組件三種常用的式樣也就產(chǎn)生了 具體如圖 所示

圖 程序設(shè)計(jì)時TextBox組件三種常見使用方法

這三種式樣就是單行的TextBox組件 多行的TextBox組件和用以輸入類似密碼數(shù)據(jù)的TextBox組件 為TextBox 組件添加事件和事件的處理代碼 此次添加的事件的名稱是Leave 當(dāng)TextBox 組件失去焦點(diǎn)時觸發(fā)此事件 添加TextBox 組件的其他事件也可仿照下面的處理方法 下面是利用Visual Basic Net在【TextBox組件】項(xiàng)目中添加TextBox 組件的Leave事件和添加Leave事件的處理代碼的具體步驟 首先把Visual Basic Net的當(dāng)前窗口切換到Form vb的代碼編輯界面 然后在如圖 所示的選擇框中選擇TextBox

圖 選擇TextBox組件

之后 在圖 所示的選擇框中選擇 Leave

圖 選取Leave事件

在選擇 Leave 之后 Visual Basic Net會自動在Form vb中產(chǎn)生TextBox 的Leave事件 在Leave事件的事件處理代碼區(qū)添加下列代碼 下面代碼調(diào)用了TextBox 組件的 Clear 方法并且顯示一個TextBox 組件失去焦點(diǎn)的提示框

TextBox Clear ( ) 清除TextBox 組件的顯示內(nèi)容MsgBox ( 失去焦點(diǎn)! ) 彈出提示框

至此【TextBox組件】項(xiàng)目的全部工作就完成了 圖 是程序編譯后運(yùn)行界面

圖 【TextBox項(xiàng)目】的運(yùn)行界面

lishixinzhi/Article/program/net/201311/12721

怎樣用VB.NET寫和調(diào)用DLl窗體

一、帶窗體的dll創(chuàng)建

1、先新建 類庫(testdll),在項(xiàng)目中添加兩個窗體form1(主窗體)、form2,為了與后面的調(diào)用區(qū)分分別命名為fm1,fm2;并在fm1窗體中添加一個按鈕用來調(diào)用fm2如下圖

2、在fm1窗體代碼中先引用fm2, ? ?按鈕代碼調(diào)用fm2.如圖

3、生成dll,(class1.vb中不需要寫任何代碼)

二、調(diào)用dll

1、新建 一個windows應(yīng)用程序并添加一個按鈕用來調(diào)用dll中的窗體,選 擇 “項(xiàng)目”-“添加引用”,選擇剛才創(chuàng)建的testdll

2、窗體代碼中先引用testdll,再定義一個testdll中的fm1對象,最后執(zhí)行對象的show方法

3、運(yùn)行結(jié)果如下:

使用VB.NET的五個技巧之窗體嵌套

NET框架組件太大了 比任何以前所寫的封裝功能的庫都要大 這樣有好處 因?yàn)樗蠓鳒p了建立應(yīng)用程序所需編寫的代碼 但是也使我們不可能完全了解該框架組件 但是我們很容易從中找到一些技巧

窗體嵌套

經(jīng)驗(yàn)豐富的Visual Basic開發(fā)者知道多文檔界面(MDI)應(yīng)用程序能夠包含子窗體 那些子窗體由MDI父窗體管理 但是如果沒有MDI的能力你怎樣實(shí)現(xiàn)包含嵌套窗體?例如一個MDI子窗體也可能需要包含另一個窗體

有時能夠使用用戶控件(UserControl)實(shí)現(xiàn)這種功能 但是如果你真的需要把一個窗體嵌套進(jìn)另一個窗體 有多種方法可以實(shí)現(xiàn) 窗體衍生自Control類 這意味著它能被放入另一個窗體的控件集合中 使用如下的邏輯

Dim f As New frmEmbed ()Me Controls Add(f)f Show()

但是很不幸 這段代碼將會導(dǎo)致一個運(yùn)行時(runtime)異常(見圖 )

圖 試圖把一個窗體添加到另一個窗體的控件集合時出現(xiàn)的運(yùn)行時錯誤

為了避免這種異常 該窗體的TopLevel屬性必須設(shè)置為False(見下面的代碼)

Dim f As New frmEmbed () f TopLevel = False Me Controls Add(f) f Show()

圖 顯示的是使用上面的邏輯實(shí)現(xiàn)的一個窗體嵌入另一個窗體 嵌入的窗體有一個標(biāo)題條(它的顏色是未激活的系統(tǒng)顏色) 因此該嵌入窗體能在容器窗體內(nèi)四處拖動 在圖 中 該窗體從它的開始位置(左上角)拖到了右下角

圖 在容器窗體中有一個嵌入的窗體 嵌入的窗體能在容器窗體中拖動

通常在顯示嵌入的窗體前先設(shè)置它的位置 這只需要簡單的設(shè)置嵌入窗體的Left和Top屬性 嵌入窗體的位置與容器窗體是相對的

與MDI子窗體不同 嵌入窗體能覆蓋容器窗體上的控件 圖 顯示了它們的不同

圖 嵌入窗體(左)可以覆蓋容器窗體上的控件 MDI子窗體(右)不能覆蓋MDI父窗體上的控件

在右邊的MDI例子中 沒有辦法使按鈕隱藏在子窗體的后面 但是在左邊該按鈕被嵌入窗體覆蓋了

當(dāng)窗體第一次被嵌入時 它將顯示在容器窗體上的已存在的控件的后面 當(dāng)它被點(diǎn)擊時 它走向前臺并停留在那兒 這會打擾用戶 但是能通過插入下面的代碼防止這種情況發(fā)生

f BringToFront()

嵌入的窗體可以包含其它的嵌入窗體 沒有實(shí)際的限制 圖 顯示了一個本身包含嵌入的窗體的嵌入窗體

lishixinzhi/Article/program/net/201311/12398

網(wǎng)站欄目:vb.net窗體詳解 vbmdi窗體
鏈接分享:http://muchs.cn/article34/doedjse.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序商城網(wǎng)站、用戶體驗(yàn)外貿(mào)建站、網(wǎng)頁設(shè)計(jì)公司、定制開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)