
正文
vb.netjs交互 vbnet json教程
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
VB.NET环境下webbrowser网页与Winform程序交互如何实现?
public Form1()
{
InitializeComponent();
webBrowser1.NewWindow += new CancelEventHandler(webBrowser1_NewWindow);
}
void webBrowser1_NewWindow(object sender, CancelEventArgs e)
{
e.Cancel=true;
webBrowser1.Navigate(webBrowser1.StatusText);
}
相关问答
Q1: VB:高分请教webbrowser里的js与程序交互问题
VBA的代码和vbs、js的代码虽然在语法有相似之处,但是结构完全不一样,VBA为编译代码,脚本为解释代码,两者不能实现直接交互,只能通过间接交互实现
这里通过VBScript修改浏览器标题,触发VB内部的TitleChange而实现交互
网页代码:
a onclick=VBScript:document.title="VB:test('X','Y','Z')"文字/a
窗体代码:
Option Compare Text
Private Function Test(S1, S2, S3)
MsgBox S1 S2 S3
End Function
Private Sub Form_Load()
WebBrowser1.Navigate "e:\1.htm"
End Sub
Private Sub WebBrowser1_TitleChange(ByVal Text As String)
If Left(Text, 3) = "VB:" Then
Dim s As String, fncName As String, l As Long, args
s = Mid(Text, 4)
s = Replace(s, "(", " ")
s = Replace(s, ")", " ")
l = InStr(s, " ")
fncName = Trim(Left(s, l - 1))
args = Split(Mid(s, l), ",")
For i = 0 To UBound(args)
args(i) = Trim(args(i))
Next
Select Case fncName
Case "test"
Test args(0), args(1), args(2)
End Select
Else
Caption = Text
End If
End Sub
Q2: vb.net 如何运行javascript
既然引用了COM组件,就可以直接使用了,无需用CreateObject创建。
Dim ScriptControl As New MSScriptControl.ScriptControl
ScriptControl.Language = "JavaScript" '设置语言种类
ScriptControl.AddCode("function TestFunc(){return 'Hello world!'}") '添加脚本代码
MsgBox(ScriptControl.Run("TestFunc")) '显示一下那段脚本的返回值(这里你将看到Hello world!字符)
Q3: javascript调用vb.net后台函数,注意是vb.net,不是C#的。
javascript不能直接调用ASP.NET的后台函数(你别管什么语言,编译之后都是一样的MSIL)。一般需要通过Ajax实现间接调用
你说的那个只是把这个变量(确切的说应该是表达式)输出到HTTP流中,也就是插入到源代码中相当于把表达式的值硬编码到了JavaScript中
%=变量% 这种语法,C#和VB.NET都可以用的
不想多说了,用JS调用后台代码很多时候是糟糕的设计造成的。一个是前台代码,一个是后台代码,实际上正常的设计很少在前台调用后台代码。劝你想想其他的解决方式
Q4: VB.NET 服务器与客户端数据交互问题?
客户端简单代码:
Imports System.Net.Sockets
Imports System.IO
Private Output As NetworkStream
Private Writer As BinaryWriter
Private Reader As BinaryReader
Dim StrSend As String
Dim client As New TcpClient '
client.Connect(servIP, 2006)
Output = client.GetStream
Writer = New BinaryWriter(Output)
Reader = New BinaryReader(Output)
StrSend = "字符串"
System.Threading.Thread.Sleep(100)
Writer.Write(StrSend)
Try
Message = Reader.ReadString
If Message = "OK" Then
LBinfo.Text = "成功!" '测试
Else
LBinfo.Text = "失败!"
End If
System.Threading.Thread.Sleep(100)
Catch ex As Exception
MessageBox.Show("Client Application Closing!")
Finally
Writer.Close()
Reader.Close()
Output.Close()
client.Close()
End Try
服务器端
用线程
Imports System.Net.Sockets
Imports System.IO
Imports System.Threading
Imports System.Windows.Forms
Private Connection As Socket
Private readThread As Thread
Private SocketStream As NetworkStream
Private Writer As BinaryWriter
Private Reader As BinaryReader
Public Sub New()
MyBase.New()
'该调用是 Windows 窗体设计器所必需的。
InitializeComponent()
'在 InitializeComponent() 调用之后添加任何初始化
readThread = New Thread(AddressOf RunServer)
readThread.Start()
End Sub
Public Sub RunServer()
Dim Listener As TcpListener
Try
Listener = New TcpListener(Net.IPAddress.Parse("192.168.1.16"), 2006)
Listener.Start()
While True
Connection = Listener.AcceptSocket 'accept an incoming connection
SocketStream = New NetworkStream(Connection) 'create networkstream object associated with socket
Writer = New BinaryWriter(SocketStream) 'create object for transferring data across stream
Reader = New BinaryReader(SocketStream) 'read string data sent from client
Try
Do
strIncept = Reader.ReadString
strIncept = DataDisp(strIncept) '此处插入数据处理程序()
SendInfoToClient(strIncept) 'send to client
Loop While Connection.Connected
Catch ex As Exception
MsgBox(ex.ToString)
Finally
Writer.Close()
Reader.Close()
SocketStream.Close()
End Try
End While
Catch ex As Exception
MsgBox(ex.ToString)
End Try
End Sub
Public Sub SendInfoToClient(ByVal Info As String)
'Send to client
Try
If Connection.Connected Then
Writer.Write(Info)
Connection.Close()
End If
Catch ex As SocketException
MessageBox.Show(ex.ToString)
End Try
End Sub
整个过程都有了
关于vb.netjs交互和vbnet json教程的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。






