與使用System.Windows.Forms命名空間中的控件的用法沒有區(qū)別。
在環(huán)江等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計 網(wǎng)站設(shè)計制作專業(yè)公司,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),高端網(wǎng)站設(shè)計,成都全網(wǎng)營銷,成都外貿(mào)網(wǎng)站建設(shè),環(huán)江網(wǎng)站建設(shè)費用合理。
首先添加引用。
其次導(dǎo)入(Imports)命名空間。
接著就可以使用了:
1、要使用用戶控件的實例成員,就先創(chuàng)建一個用戶控件的實例,再通過實例名.實例成員名訪問;
2、要使用用戶控件的共享(Shared)成員,通過用戶控件類名.共享成員名訪問。
如果你問的是怎樣創(chuàng)建自己的用戶控件類:
1、繼承類System.Windows.Forms.UserControl;
2、繼承任何一個已經(jīng)存在的控件類(只要這個控件類不是NotInheritable的就行)。
調(diào)用過程,調(diào)用過程有諸多技巧,它們與過程的類型、位置以及在應(yīng)用程序中的使用方式有關(guān)。下面說明如何調(diào)用 Sub 過程和 Function 過程。
調(diào)用 Sub 過程
與 Sub 過程不同,在表達(dá)式中,Sub 過程不能用其名字調(diào)用。調(diào)用 Sub 過程的是一個獨立的語句。Sub 過程還有一點與函數(shù)不一樣,它不會用名字返回一個值。但是,與 Function過程一樣,Sub 過程也可以修改傳遞給它們的任何變量的值。
調(diào)用 Sub 過程有兩種方法:
'以下兩個語句都調(diào)用了名為 MyProc 的 Sub 過程。
Call MyProc (FirstArgument, SecondArgument)
MyProc FirstArgument, SecondArgument
注意,當(dāng)使用 Call 語法時,參數(shù)必須在括號內(nèi)。若省略 Call 關(guān)鍵字,則也必須省略參數(shù)兩邊的括號
調(diào)用函數(shù)過程
通常,調(diào)用自行編寫的函數(shù)過程的方法和調(diào)用 Visual Basic 內(nèi)部函數(shù)過程(例如 Abs)的方法一樣;即在表達(dá)式中寫上它的名字。
'下面的語句都調(diào)用函數(shù) ToDec。
Print 10 * ToDec
X = ToDec
If ToDec = 10 Then Debug.Print "Out of Range"
X = AnotherFunction ( 10 * ToDec)
就像調(diào)用 Sub 過程那樣,也能調(diào)用函數(shù)。下面的語句都調(diào)用同一個函數(shù):
Call Year (Now)
Year Now
當(dāng)用這種方法調(diào)用函數(shù)時,Visual Basic 放棄返回值。
調(diào)用其它模塊中的過程
在工程中的任何地方都能調(diào)用其它模塊中的公用過程??赡苄枰付ㄟ@樣的模塊,它包含正在調(diào)用的過程。調(diào)用其它模塊中的過程的各種技巧,取決于該過程是在窗體模塊中、類模塊中還是標(biāo)準(zhǔn)模塊中。
窗體中的過程
所有窗體模塊的外部調(diào)用必須指向包含此過程的窗體模塊。如果在窗體模塊 Form1 包含 SomeSub 過程,則可使用下面的語句調(diào)用 Form1 中的過程:
Call Form1.SomeSub(arguments)
類模塊中的過程
與窗體中調(diào)用過程類似,在類模塊中調(diào)用過程要調(diào)用與過程一致并且指向類實例的變量。例如,DemoClass 是類 Class1 的實例:
Dim DemoClass as New Class1
DemoClass.SomeSub
但是不同于窗體的是,在引用一個類的實例時,不能用類名作限定符。必須首先聲明類的實例為對象變量(在這個例子中是 DemoClass )并用變量名引用它。
標(biāo)準(zhǔn)模塊中的過程
如果過程名是唯一的,則不必在調(diào)用時加模塊名。無論是在模塊內(nèi),還是在模塊外調(diào)用,結(jié)果總會引用這個唯一過程。如果過程僅出現(xiàn)在一個地方,這個過程就是唯一的。
如果兩個以上的模塊都包含同名的過程,那就有必要用模塊名來限定了。在同一模塊內(nèi)調(diào)用一個公共過程就會運行該模塊內(nèi)的過程。例如,對于 Module1 和 Module2 中名為 CommonName 的過程,從 Module2 中調(diào)用 CommonName 則運行 Module2 中的 CommonName 過程,而不是 Module1 中的 CommonName 過程。
從其它模塊調(diào)用公共過程名時必須指定那個模塊。例如,若在 Module1 中調(diào)用 Module2 中的 CommonName 過程,要用下面的語句:
Module2.CommonName (arguments)
Public ? 用于聲明對所有模塊中的所有其它過程都可以使用的過程。?
Private ?用于聲明只能在包含該聲明的模塊中使用的過程。
DataGridView控件,放一個DataGridView1和Button1到窗體,下面是按鈕下代碼\x0d\x0a Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click\x0d\x0a Me.DataGridView1.AllowUserToAddRows = False\x0d\x0a DataGridView1.RowTemplate.Height = 200\x0d\x0a DataGridView1.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.None\x0d\x0a For i = 1 To 3\x0d\x0a Me.DataGridView1.Columns.Add("列" i.ToString, "列" i.ToString)\x0d\x0a Me.DataGridView1.Rows.Add()\x0d\x0a Next\x0d\x0a Me.DataGridView1.Columns(0).Width = 100\x0d\x0a Me.DataGridView1.Columns(1).Width = 500\x0d\x0a Me.DataGridView1.Columns(0).Width = 300\x0d\x0a End Sub\x0d\x0a'自己設(shè)置相關(guān)需要的屬性即可
這些問題的確頭大,vb的dll、ocx等,在vb.net里都不好調(diào)用,主要是來要注冊組件等,麻煩。建議全部用vb.net寫就好了,
Public Class ks
Inherits System.Windows.Forms.Form
#Region " Windows 窗體設(shè)計器生成的代碼 "
Public Sub New()
MyBase.New()
'該調(diào)用是 Windows 窗體設(shè)計器所必需的。
InitializeComponent()
'在 InitializeComponent() 調(diào)用之后添加任何初始化
End Sub
'窗體重寫 dispose 以清理組件列表。
Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
If disposing Then
If Not (components Is Nothing) Then
components.Dispose()
End If
End If
MyBase.Dispose(disposing)
End Sub
'Windows 窗體設(shè)計器所必需的
Private components As System.ComponentModel.IContainer
'注意: 以下過程是 Windows 窗體設(shè)計器所必需的
'可以使用 Windows 窗體設(shè)計器修改此過程。
'不要使用代碼編輯器修改它。
Friend WithEvents tx As System.Windows.Forms.TextBox
Friend WithEvents ty As System.Windows.Forms.TextBox
Friend WithEvents tz As System.Windows.Forms.TextBox
Friend WithEvents ok As System.Windows.Forms.Button
Friend WithEvents l1 As System.Windows.Forms.Label
Friend WithEvents l2 As System.Windows.Forms.Label
Friend WithEvents l3 As System.Windows.Forms.Label
System.Diagnostics.DebuggerStepThrough() Private Sub InitializeComponent()
Me.l1 = New System.Windows.Forms.Label
Me.l2 = New System.Windows.Forms.Label
Me.l3 = New System.Windows.Forms.Label
Me.tx = New System.Windows.Forms.TextBox
Me.ty = New System.Windows.Forms.TextBox
Me.tz = New System.Windows.Forms.TextBox
Me.ok = New System.Windows.Forms.Button
Me.SuspendLayout()
'
'l1
'
Me.l1.BackColor = System.Drawing.Color.FromArgb(CType(192, Byte), CType(192, Byte), CType(255, Byte))
Me.l1.Location = New System.Drawing.Point(8, 8)
Me.l1.Name = "l1"
Me.l1.Size = New System.Drawing.Size(200, 16)
Me.l1.TabIndex = 0
'
'l2
'
Me.l2.BackColor = System.Drawing.Color.FromArgb(CType(192, Byte), CType(192, Byte), CType(255, Byte))
Me.l2.Location = New System.Drawing.Point(8, 32)
Me.l2.Name = "l2"
Me.l2.Size = New System.Drawing.Size(200, 16)
Me.l2.TabIndex = 1
'
'l3
'
Me.l3.BackColor = System.Drawing.Color.FromArgb(CType(192, Byte), CType(192, Byte), CType(255, Byte))
Me.l3.Location = New System.Drawing.Point(8, 56)
Me.l3.Name = "l3"
Me.l3.Size = New System.Drawing.Size(200, 16)
Me.l3.TabIndex = 2
'
'tx
'
Me.tx.Location = New System.Drawing.Point(8, 80)
Me.tx.Name = "tx"
Me.tx.Size = New System.Drawing.Size(200, 25)
Me.tx.TabIndex = 3
Me.tx.Text = "請輸入x"
'
'ty
'
Me.ty.Location = New System.Drawing.Point(8, 104)
Me.ty.Name = "ty"
Me.ty.Size = New System.Drawing.Size(200, 25)
Me.ty.TabIndex = 4
Me.ty.Text = "請輸入y"
'
'tz
'
Me.tz.Location = New System.Drawing.Point(8, 128)
Me.tz.Name = "tz"
Me.tz.Size = New System.Drawing.Size(200, 25)
Me.tz.TabIndex = 5
Me.tz.Text = "請輸入z"
'
'ok
'
Me.ok.BackColor = System.Drawing.Color.FromArgb(CType(192, Byte), CType(192, Byte), CType(255, Byte))
Me.ok.Location = New System.Drawing.Point(8, 160)
Me.ok.Name = "ok"
Me.ok.Size = New System.Drawing.Size(200, 64)
Me.ok.TabIndex = 6
Me.ok.Text = "ok"
'
'ks
'
Me.AutoScaleBaseSize = New System.Drawing.Size(8, 18)
Me.BackColor = System.Drawing.Color.FromArgb(CType(128, Byte), CType(128, Byte), CType(255, Byte))
Me.ClientSize = New System.Drawing.Size(216, 232)
Me.Controls.Add(Me.ok)
Me.Controls.Add(Me.tz)
Me.Controls.Add(Me.ty)
Me.Controls.Add(Me.tx)
Me.Controls.Add(Me.l3)
Me.Controls.Add(Me.l2)
Me.Controls.Add(Me.l1)
Me.Name = "ks"
Me.Text = "考試"
Me.ResumeLayout(False)
End Sub
#End Region
Dim x, y, z, a, b, c, d, aa, bb, cc As Single
Dim tts, alls As Single
Private Sub ks_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
x = Int(1 + 30 * Rnd())
y = Int(1 + 20 * Rnd())
z = Int(1 + 25 * Rnd())
a = Int(2 + 4 * Rnd())
b = Int(1 + a * 2 * Rnd())
c = Int(1 + b * 2 * Rnd())
d = Int(1 + c * 3 * Rnd())
aa = x + y + z
bb = a * x + b * y + c * z
cc = b * x + c * y + d * z
l1.Text = "x+y+z=" Str(aa)
l2.Text = Str(a) "x+" Str(b) "y+" Str(c) "z=" Str(bb)
l3.Text = Str(b) "x+" Str(c) "y+" Str(d) "z=" Str(cc)
End Sub
Private Sub ok_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ok.Click
If Val(tx.Text) = x And Val(ty.Text) = y And Val(tz.Text) = z Then
tts = tts + 1
End If
alls = alls + 1
tx.Text = ""
ty.Text = ""
tz.Text = ""
x = Int(1 + (1000 ^ 0.5) * Rnd())
y = Int(1 + (10000 ^ 0.4) * Rnd())
z = Int(1 + (100000 ^ 0.3) * Rnd())
a = Int(2 + 4 * Rnd())
b = Int(1 + a * 2 * Rnd())
c = Int(1 + b * 2 * Rnd())
d = Int(1 + c * 3 * Rnd())
aa = x + y + z
bb = a * x + b * y + c * z
cc = b * x + c * y + d * z
l1.Text = "x+y+z=" Str(aa)
l2.Text = Str(a) "x+" Str(b) "y+" Str(c) "z=" Str(bb)
l3.Text = Str(b) "x+" Str(c) "y+" Str(d) "z=" Str(cc)
End Sub
Private Sub ks_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Click
Dim lv As Single
If Not (alls = 0) Then
lv = Int(tts * 100000 / alls) / 1000
MsgBox(Str(lv) "%", , "正確率")
tx.Visible = False
ty.Visible = False
tz.Visible = False
ok.Visible = False
l1.Visible = False
l2.Visible = False
l3.Visible = False
Else
MsgBox("答題!", , "答題!")
End If
End Sub
End Class