1,你需要一個(gè)服務(wù)器端的生產(chǎn)和制造的客戶(hù)端
創(chuàng)新互聯(lián)建站是一家專(zhuān)注于網(wǎng)站建設(shè)、成都網(wǎng)站建設(shè)與策劃設(shè)計(jì),嵐皋網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)建站做網(wǎng)站,專(zhuān)注于網(wǎng)站建設(shè)十年,網(wǎng)設(shè)計(jì)領(lǐng)域的專(zhuān)業(yè)建站公司;建站業(yè)務(wù)涵蓋:嵐皋等地區(qū)。嵐皋做網(wǎng)站價(jià)格咨詢(xún):13518219792
2,在服務(wù)器端用來(lái)與數(shù)據(jù)庫(kù)打交道,并接受客戶(hù)端的數(shù)據(jù)傳送到
客戶(hù)端的一些數(shù)據(jù),當(dāng)數(shù)據(jù)傳輸?shù)椒?wù)器上,服務(wù)器端在接收到的數(shù)據(jù),數(shù)據(jù)庫(kù)操作,
根據(jù)您的操作,當(dāng)然,如果喜歡它的SQL Server網(wǎng)絡(luò)數(shù)據(jù)庫(kù)更方便,但速度不知道快速進(jìn)攻
方法很多,vb.net很簡(jiǎn)單的比如: Form2窗體的Textbox2屬性設(shè)置為public,在Form1點(diǎn)擊button1.
Dim frm As New Form2
frm.TextBox2.Text = "123"
frm.ShowDialog() 可以取到form1里面窗體傳的值
還有一種方法:From1 :
Dim frm As New Form2
frm.Owner = Me
frm.ShowDialog()
from2 : Private frmParent As Form1
frmParent = Me.Owner
Me.TextBox2.Text = frmParent.TextBox1.Text
在編寫(xiě)VB.Net windows應(yīng)用程序的時(shí)候我們經(jīng)常會(huì)遇到這種問(wèn)題,怎么樣在兩個(gè)窗體間傳遞數(shù)據(jù)呢?例如,用VB.Net做一個(gè)文本編輯器,里面有一個(gè)搜索功能(即搜索我打開(kāi)的文本里面的文字),點(diǎn)搜索則彈出搜索對(duì)話(huà)框,輸入要搜索的內(nèi)容,然后確定,就可以搜索到我打開(kāi)的文本里面的文字了,這里就用到了兩個(gè)窗體間的相互通信。我查看了相關(guān)的資料想了想,得出一些想法和方法。
也許有的人會(huì)覺(jué)得這個(gè)很簡(jiǎn)單呀。假如主框架為Form1,打開(kāi)的搜索對(duì)話(huà)框是Form2.直接在Form2類(lèi)中申明一個(gè)Form1實(shí)例:dim f1 as new Form1然后就可以通過(guò)f1來(lái)調(diào)用Form1中的域和函數(shù)了。其實(shí)不是這樣的,你申明的新的Form1實(shí)例不是原來(lái)的那個(gè)Form1對(duì)象了,這樣操作的是新的Form1中的域和函數(shù),和最先打開(kāi)的Form1是沒(méi)有關(guān)系的。
那應(yīng)該如何來(lái)完成兩個(gè)窗體的通訊呢?我們要做的是把當(dāng)前的Form1實(shí)例傳遞給Form2,如果是這樣的話(huà),問(wèn)題就很好解決了。
方法1:首先,我們?cè)贔orm2中定義:
Private mF_Form As Form1
我們更改Form2的構(gòu)造函數(shù)為有參數(shù)的
Public Sub New(ByVal form As Form1)
MyBase.New()
'該調(diào)用是 Windows 窗體設(shè)計(jì)器所必需的。
InitializeComponent()
Me.mF_Form = form
'在 InitializeComponent() 調(diào)用之后添加任何初始化
End Sub
在Form1中,我在 要用到Form2的地方申明如下:
Dim f1 As New Form2(Me)
這里的me指的就是Form1當(dāng)前的實(shí)例,也就是把當(dāng)前Form1的實(shí)例通過(guò)Form2的構(gòu)造函數(shù)傳遞給Form2類(lèi)(其實(shí)在網(wǎng)上看到過(guò)比較蠢的方式,就是在構(gòu)造函數(shù)里面?zhèn)鬟f要傳遞的信息如:字符串或是數(shù)字等,這樣做很有局限性,不能傳遞其他的,所有我們可以直接傳遞實(shí)例,來(lái)完成傳遞更多的信息。)
這樣在Form2中使用myForm 就可以對(duì)原來(lái)的Form1窗口進(jìn)行操作了。但是你要把要操作的Form1中的域和函數(shù)定義成public形式的(這樣可能不安全),此時(shí)的myForm就是真正的最開(kāi)始打開(kāi)的Form1了,你可以用這個(gè)實(shí)例來(lái)進(jìn)行兩個(gè)窗體的通訊了。
方法2:其實(shí)VB.Net中提供了窗體間進(jìn)行通訊的現(xiàn)成的屬性,呵呵,我們能想到的,微軟也想到了,他們創(chuàng)造的語(yǔ)言其實(shí)確實(shí)可以說(shuō)是人性化了。
在Form1類(lèi)中申明Form2時(shí)用如下代碼:
Dim f2As New Form2 '類(lèi)Form2中的構(gòu)造函數(shù)不改,還是無(wú)參的
f2.owner=me
也可以使用函數(shù)的方法,給當(dāng)前實(shí)例添加一個(gè)附屬窗口 代碼:Me.AddOwnedForm(f2)
在Form2類(lèi)的定義中寫(xiě)如下代碼:
dim f1 as Form1=me.owner
這樣f1對(duì)應(yīng)的就是原來(lái)的Form1的實(shí)例了,也就可以用這個(gè)進(jìn)行通訊了。但是還是要把不同類(lèi)之間訪問(wèn)的域和函數(shù)定義成public,哎,安全確實(shí)是一個(gè)問(wèn)題!!
byval
byref
Of
Optional
ParamArray
在Visual stdio 工程中寫(xiě) public sub AA(
下面自動(dòng)出現(xiàn)這五個(gè).
你這個(gè)默認(rèn)是指自動(dòng)生成的方法(過(guò)程\函數(shù))嗎?
那么默認(rèn)是值傳遞Byval
要是自己寫(xiě)函數(shù).則無(wú)參為默認(rèn)
思路
socket 按次傳輸,
第一次 文件大小
第二次 文件名
第三次 文件類(lèi)型
第四次以后 文件數(shù)據(jù)傳輸
以上規(guī)則僅供參考,具體規(guī)則,自己根據(jù)實(shí)際情況設(shè)計(jì)
新窗體中寫(xiě)
構(gòu)造函數(shù)
,然后調(diào)用。
比如你要調(diào)用的新窗體是From1.cs這個(gè)窗體,
public
Form1(要傳入的參數(shù))
{
//把傳入的參數(shù)傳入窗體中
//執(zhí)行窗體標(biāo)準(zhǔn)內(nèi)容
}
然后在需要調(diào)用的地方調(diào)用
Form1
f
=
new
Form1(傳出的參數(shù));
'--------Form1--------
Dim
f2
As
Form2
Private
Sub
Command1_Click()
Set
f2
=
New
Form2
f2.Show
vbModal
End
Sub
'--------Form1
End--------
'--------Form2--------
Dim
WithEvents
f3
As
Form3
Private
Sub
Command1_Click()
Set
f3
=
New
Form3
f3.Show
End
Sub
Public
Sub
f3_f2W()
Me.Command1.Caption
=
"f2W"
End
Sub
'--------Form2
End--------
'--------Form3--------
Public
Event
f2W()
Private
Sub
Command1_Click()
RaiseEvent
f2W
End
Sub
'--------Form3
End--------
f.Show();
如此就能實(shí)現(xiàn)調(diào)用了。