真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

用vb.net編寫抽烏龜 用vb編寫一個(gè)抽獎(jiǎng)程序

vb.net的COM組件的編寫問(wèn)題

我想了兩種思路,winform沒(méi)有findControl,只有個(gè)this.Controls.Contains("textBox1"),因此除了遍歷沒(méi)辦法了。。。

成都創(chuàng)新互聯(lián)自2013年起,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都做網(wǎng)站、網(wǎng)站建設(shè)、外貿(mào)營(yíng)銷網(wǎng)站建設(shè)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元來(lái)賓做網(wǎng)站,已為上家服務(wù),為來(lái)賓各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:18980820575

思路1:遍歷Controls,具體你自己完善下,

if(this.Controls.Count0)

{

foreach(Control c in this.Controls)

if(c.GetTepy==Tepyof(TextBox))

string str += ((TextBox)c).Text;

}

VB.net編寫的dll,供vb6調(diào)用時(shí)dll中的函數(shù)不可見(jiàn)?

在您的代碼中,您已經(jīng)成功使用了RegAsm命令將DLL注冊(cè)為COM組件,并在VB6中成功引用了該組件的類型庫(kù)文件(TLB文件)。此外,您還在VB6代碼中聲明了一個(gè)YCImageDo類型的對(duì)象,并成功創(chuàng)建了該對(duì)象。

但是,當(dāng)您嘗試使用YCImageDo對(duì)象的屬性和方法時(shí),卻發(fā)現(xiàn)這些成員不可見(jiàn)。這可能是因?yàn)樵诰帉慏LL代碼時(shí)您沒(méi)有正確地聲明這些成員的可見(jiàn)性。

在VB.NET中,您可以使用"Public"關(guān)鍵字來(lái)聲明一個(gè)類型的成員(屬性、方法、過(guò)程等)對(duì)外可見(jiàn),而使用"Private"關(guān)鍵字則聲明該成員僅在類型內(nèi)可見(jiàn)。如果您希望YCImageDo類型的成員在VB6代碼中可見(jiàn),則應(yīng)將這些成員聲明為Public類型。

例如,如果您希望YCImageDo類型擁有一個(gè)名為"GetImage"的方法,則可以在DLL代碼中按如下方式聲明該方法:

Public Function GetImage() As String

' 在這里編寫方法的代碼

End Function

同樣,如果您希望YCImageDo類型擁有一個(gè)名為"ImagePath"的屬性,則可以在DLL代碼中按如下方式聲明該屬性:

Public Property ImagePath As String

使用VB.NET的五個(gè)技巧之處理數(shù)據(jù)行

處理數(shù)據(jù)行(DataRow)

Windows窗體中的數(shù)據(jù)綁定列表框和組合框很節(jié)省時(shí)間 典型的代碼如下(假定已經(jīng)建立了SqlDataAdapter或者其它部件獲取數(shù)據(jù))

Dim ds As New DataSet() SqlDataAdapter Fill(ds Customers ) ListBox DataSource = ds Tables( Customers ) ListBox DisplayMember = CompanyName ListBox ValueMember = CustomerID

在這種情況下 代碼使用Northwind數(shù)據(jù)庫(kù)的顧客記錄工作 DisplayMember屬性設(shè)置為你希望用戶在列表框中看到的記錄字段 它是customers表的CompanyName 通常ValueMember屬性設(shè)置為數(shù)據(jù)表中的一個(gè)鍵字段 對(duì)于customer來(lái)說(shuō)是CustomerID 一旦用戶選擇了列表框中的一行 很容易使用列表框的SelectedValue屬性獲得鍵字段

MsgBox(ListBox SelectedValue)

但是有可能需要一個(gè)與被選擇項(xiàng)相關(guān)的整個(gè)數(shù)據(jù)行對(duì)象的引用 例如 如果被選擇的行需要被刪除 就不知道鍵了 你需要一個(gè)數(shù)據(jù)行的引用以使用Delete方法

典型的Visual Basic開發(fā)者通常這樣想 我已經(jīng)得到了該行的鍵了 我將編寫一些邏輯來(lái)查找使用該鍵的行 這樣可以實(shí)現(xiàn) 但是有更好的實(shí)現(xiàn)方法 可以使用一行代碼獲取與列表框中選項(xiàng)關(guān)聯(lián)的數(shù)據(jù)行

Dim dr As DataRow = CType(ListBox SelectedItem DataRowView) Row

通常該邏輯不會(huì)憑直覺(jué)出現(xiàn) 即使對(duì)經(jīng)驗(yàn)豐富的開發(fā)者 為了解釋這是怎樣實(shí)現(xiàn)的 我把上面的一行拆成幾行 下面的代碼與上面代碼的功能相同

Dim drv As DataRowView drv = CType(ListBox SelectedItem DataRowView) Dim dr As DataRow dr = drv Row

DataRowView類是數(shù)據(jù)行的包裝 它被多個(gè)Windows窗體控件使用 它使得顯示與控件中的數(shù)據(jù)行相關(guān)的數(shù)據(jù)更加容易 當(dāng)列表框被數(shù)據(jù)綁定到數(shù)據(jù)表時(shí)(假定列表框中的有些行當(dāng)前被選定了) 列表框的SelectedItem屬性保存了一個(gè)DataRowView對(duì)象

這意味著我們能把列表框的SelectedItem屬性轉(zhuǎn)換到DataRowView對(duì)象 這就是上面代碼中的第二行實(shí)現(xiàn)的 接著DataRowView暴露一個(gè)Row屬性 它指向被包裝的數(shù)據(jù)行 上面的代碼聲明了一個(gè)數(shù)據(jù)行并設(shè)置了Row屬性

轉(zhuǎn)換對(duì)象的類型以訪問(wèn)它的接口的技術(shù)在Visual Basic 中不是經(jīng)常使用 但是在Visual Basic NET中這是經(jīng)常的 有了上面的例子后 大多數(shù)有經(jīng)驗(yàn)的開發(fā)者迅速跟上了這種技術(shù)

數(shù)據(jù)行的引用(dr)可用于用任何方式維護(hù)行 訪問(wèn)數(shù)據(jù)行中的任何特定字段是可行的 行中的數(shù)據(jù)可以被改變 能使數(shù)據(jù)行的Delete方法把該行標(biāo)識(shí)為刪除 或者從數(shù)據(jù)表的行集合中刪除該行 下面的代碼標(biāo)識(shí)刪除了一行

dr Delete()

lishixinzhi/Article/program/net/201311/12974


標(biāo)題名稱:用vb.net編寫抽烏龜 用vb編寫一個(gè)抽獎(jiǎng)程序
分享鏈接:http://weahome.cn/article/doiidio.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部