
正文
vb.net获取股价 vb获取股票实时数据
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
VB.NET想用GetWindowRECT获取某窗口的坐标,但测试结果是L,T,R,B显示都是0,0,0,0
很简单,原因有二。第一,VB里long是32位,但是VB.NET里是64位,Dim ksWND As Integer才对。第二,VB在API里默认传址,而VB.NET默认传值,所以API里要添加Private Declare Function GetWindowRect Lib "user32" (ByVal hwnd As Long,添加"ByRef" lpRect As RECT) As Integer
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function GetWindowRect Lib "user32" (ByVal hwnd As Long,byref lpRect As RECT) As Integer
Private Structure RECT
Dim Left As Integer
Dim Top As Integer
Dim Right As Integer
Dim Bottom As Integer
End Structure
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim ksWND As integer
Dim ksTitle As String
Dim winS As RECT
If TextBox1.Text "" Then
ksTitle = TextBox1.Text
ksWND = FindWindow(vbNullString, ksTitle)
GetWindowRect(ksWND, winS)
MsgBox("左上角坐标(" winS.Left "," winS.Top ")" vbCrLf "右下角坐标(" winS.Right "," winS.Bottom ")" vbCrLf "窗口高" winS.Bottom - winS.Top "窗口宽" winS.Right - winS.Left)
Else
MsgBox("请填写窗口名称")
End If
End Sub
相关问答
Q1: 用VB如何直接获取股票实时数据
可以通过调用ChinaStockWebService的服务来实现获取股票的实时数据,代码如下:
public string[] getStockInfo(string stockcode)
{
//string url = ""+stockcode;
//stockcode 某只股票的代码
string url = "";
WebClient client = new WebClient();
client.Headers.Add("Content-Type", "text/html; charset=gb2312");
Stream data = client.OpenRead(url);
StreamReader reader = new StreamReader(data, Encoding.GetEncoding("gb2312"));
string s = reader.ReadToEnd();
reader.Close();
data.Close();
return s.Split(',');
}
Q2: 在VB.NET中如何使用新浪股票数据接口
vb6.0中做过这个项目,但是vb.net中也遇到这个问题,看看能否交流一下,刚刚转vb.net。vb6.0中部分代码如下:
Dim HttpReq As Object
Dim request As String
HttpReq = CreateObject("MSXML2.XMLHTTP.3.0")
HttpReq.open("GET", uri, False)
HttpReq.send()
'解析返回值
request = HttpReq.responseBody
request = Split(Split(StrConv(request,vbUnicode,H804),"=")(1),";")(0)






