新聞中心
vb.net自定義控件問題
首先,你已經(jīng)完成的步驟是:
創(chuàng)新互聯(lián)公司專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計、鎮(zhèn)原網(wǎng)絡(luò)推廣、重慶小程序開發(fā)、鎮(zhèn)原網(wǎng)絡(luò)營銷、鎮(zhèn)原企業(yè)策劃、鎮(zhèn)原品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎;創(chuàng)新互聯(lián)公司為所有大學(xué)生創(chuàng)業(yè)者提供鎮(zhèn)原建站搭建服務(wù),24小時服務(wù)熱線:028-86922220,官方網(wǎng)址:www.cdcxhl.com
1.新建一個用戶控件[注意,用戶控件(UserControl)不是自定義控件(CustomControl)]
2.給用戶控件起個名字(我在此處起名叫 RadioList)
3.在用戶控件上畫一個 GroupBox,命名為 RadioGroup,
并將其 Dock 屬性設(shè)置為 Fill
然后,你需要做的是動態(tài)增減控件。
如果你以前用過 VB 6,你可能會想到控件數(shù)組,
但在此處,你可以直接增刪控件。
具體實現(xiàn)如下:
4.在 GroupBox 里畫一個 FlowLayoutPanel,命名為 RadioPanel,
將其 AutoScroll 屬性設(shè)置為 True,即自動顯示滾動條,
并設(shè)置其 FlowDirection 屬性(例如設(shè)置為 TopDown)
這樣就省去了手動調(diào)整 RadioButton 位置的麻煩
5.實現(xiàn)選項的動態(tài)增減(以下只是我的思路,你可以發(fā)揮一下)
(十分簡潔,注釋除外):
''' summary
''' 創(chuàng)建一個新的 RadioButton。
''' /summary
Private Function CreateRadio() As RadioButton
Dim NewRadio As New RadioButton
components.Add(NewRadio)
'components 字段由控件設(shè)計器自動創(chuàng)建,
'此代碼目的是使控件在銷毀(Dispose)時能自動銷毀 RadioButton
'詳情參見 RadioList.Designer.vb
NewRadio.Parent = RadioPanel
'設(shè)置容器
AddHandler NewRadio.CheckedChanged, AddressOf RadioButtons_CheckedChanged
'設(shè)置事件處理程序
Return NewRadio
End Function
''' summary
''' 移除已存在的 RadioButton。
''' /summary
Private Sub RemoveRadio(ByVal dest As RadioButton)
components.Remove(dest)
dest.Dispose()
End Sub
'無中生有的 RadioButton 的事件處理程序
Private Sub RadioButtons_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
'在此處設(shè)置選中項的屬性,通過 sender 來確定不同的 OptionButton
'你可以通過將 OptionButton 放在一個列表,
'如 List(Of OptionButton) 中來像數(shù)組一樣維護選項的次序
'注意,此處需要判斷 sender 的 Checked 屬性是否為 True
'因為 Changed 是“改變”,而不是“選中”
'例如:
If DirectCast(sender, RadioButton).Checked Then
SelectedIndex = ...
End If
End Sub
工控行業(yè)一般VB語言用在哪些方面,要怎么學(xué)?
n年前用VB做過幾個不同形式的工控系統(tǒng)。
1)VB很適合作上位機的用戶界面(UI)
2)一般地,上位機與現(xiàn)場設(shè)備或現(xiàn)場控制設(shè)備之間,采用RS232C/485/422通信。所以,掌握串行通信原理,比如,什么是同步傳輸,什么是異步傳輸,什么是奇偶校驗,什么是CRC校驗,什么是面向字符(字節(jié))的傳輸,什么是透明傳輸,等等,這些概念對構(gòu)建一個上位系統(tǒng)非常重要。對于VB6而言,就是掌握MSCOMM控件;對于VB.NET而言,掌握SerialPort
3)有的時候,上位機于現(xiàn)場設(shè)備之間的通信,采用特定的接口板塊。例如,在上位機PCI卡槽中插入特定功能的接口版。VB通過操縱這些接口版,與設(shè)備通信。通常,接口版制造商提供DLL形式的編程接口,VB調(diào)用這些DLL即可操縱這些接口版。所以,需要掌握VB調(diào)用DLL的知識。
4)工業(yè)以太網(wǎng)得到越來越多的應(yīng)用,VB可以通過工業(yè)以太網(wǎng)操縱設(shè)備。這需要掌握Socket編程。對vb6而言,就是WinSock控件;對VB.NET就是SOCKET類
vb和vb.net的區(qū)別和特點
1、vb.net ?完全符合面向?qū)ο蟮木幊陶Z言抽象、封裝、繼承的四大特性,而vb不支持繼承。
2、錯誤處理不同。
vb中只是On Error.....goto和On Errer Resume Next ,這些錯誤稱為非結(jié)構(gòu)化異常處理。而在vb.net中采用的結(jié)構(gòu)化異常處理機制,try...catch....finally控制。
3、兩者產(chǎn)生的窗體不同。
vb.net 允許創(chuàng)建不同類型的應(yīng)用程序,例如,創(chuàng)建ASP.NET和ASP.NET Web 服務(wù)應(yīng)用程序,還允許創(chuàng)建控制臺應(yīng)用程序和作為桌面服務(wù)運行的應(yīng)用程序。但是vb 只能創(chuàng)建Windows窗體。
4、數(shù)據(jù)庫訪問的差別。
vb6.0是通過ADO(Active X Data Objext)來實現(xiàn)對數(shù)據(jù)庫訪問。而vb.net 是通過ADO.NET來訪問數(shù)據(jù)庫。
擴展資料
Visual Basic(簡稱VB)是Microsoft公司開發(fā)的一種通用的基于對象的程序設(shè)計語言,為結(jié)構(gòu)化的、模塊化的、面向?qū)ο蟮?、包含協(xié)助開發(fā)環(huán)境的事件驅(qū)動為機制的可視化程序設(shè)計語言。是一種可用于微軟自家產(chǎn)品開發(fā)的語言。
“Visual” 指的是開發(fā)圖形用戶界面 (GUI) 的方法——不需編寫大量代碼去描述界面元素的外觀和位置,而只要把預(yù)先建立的對象add到屏幕上的一點即可。
“Basic”指的是 BASIC (Beginners All-Purpose Symbolic Instruction Code) 語言,是一種在計算技術(shù)發(fā)展歷史上應(yīng)用得最為廣泛的語言。
Visual Basic源自于BASIC編程語言。VB擁有圖形用戶界面(GUI)和快速應(yīng)用程序開發(fā)(RAD)系統(tǒng),可以輕易的使用DAO、RDO、ADO連接數(shù)據(jù)庫,或者輕松的創(chuàng)建Active?X控件,用于高效生成類型安全和面向?qū)ο蟮膽?yīng)用程序 。
參考資料:百度百科-Visual Basic
如何在vb.net里面動態(tài)添加控件
Private WithEvents NewTextBox As TextBox
'通過使用WithEvents關(guān)鍵字聲明一個對象變量為新的命令按鈕
Private Sub Command1_Click()
If NewTextBox Is Nothing Then
Set NewTextBox = Controls.Add("VB.TextBox", "cmdNew", Form1)
NewTextBox.Move 200, 200
NewTextBox.Width = Form1.Width - 450
NewTextBox.Height = Form1.Height - 1400
NewTextBox.Visible = True
End If
End Sub
Private Sub Command2_Click()
If NewTextBox Is Nothing Then
Exit Sub
Else
Controls.Remove NewTextBox
Set NewTextBox = Nothing
End If
End Sub
網(wǎng)頁名稱:vb.net控件工控 vb窗體控件
瀏覽地址:http://fisionsoft.com.cn/article/hepcoc.html