von
grundschüler (Gast)
29.01.2015 12:23
ich möchte in den Netzwerk-hp officejet 8600 aus einer Datenbank
Faxnummern automatisch eingeben.
mit diesem code 1 Private Sub Button3_Click ( ByVal sender As System . Object , ByVal e As System . EventArgs ) Handles Button3 . Click
2 Dim abfr , x , y , z , u , v
3 ' Clipboard . SetText ( adrFax_dial . ToString )
4 ' WebBrowser1 . ShowPropertiesDialog ()
5 abfr = WebBrowser1 . Size . Height . ToString
6 abfr = WebBrowser1 . Height . ToString
7
8 z = WebBrowser1 . Size . Width
9 u = WebBrowser1 . Size . Height
10 x = WebBrowser1 . Location . X ()
11 y = WebBrowser1 . Location . Y ()
12 WebBrowser1 . Left = 0
13 Me . Location = New Point ( 5 , 5 )
14 WebBrowser1 . Location = New Point ( 5 , 5 )
15 Windows . Forms . Cursor . Position = New Point ( x + 620 , y + 345 )
16 mouse_event ( MOUSEEVENTF_LEFTDOWN , 0 , 0 , 0 , 1 )
17 mouse_event ( MOUSEEVENTF_LEFTUP , 0 , 0 , 0 , 1 )
18 Windows . Forms . Cursor . Position = New Point ( 400 , 390 )
19 mouse_event ( MOUSEEVENTF_LEFTDOWN , 0 , 0 , 0 , 1 )
20 mouse_event ( MOUSEEVENTF_LEFTUP , 0 , 0 , 0 , 1 )
21 mouse_event ( MOUSEEVENTF_LEFTDOWN , 0 , 0 , 0 , 1 )
22 mouse_event ( MOUSEEVENTF_LEFTUP , 0 , 0 , 0 , 1 )
23 Threading . Thread . Sleep ( 150 )
24 mouse_event ( MOUSEEVENTF_LEFTDOWN , 0 , 0 , 0 , 1 )
25 mouse_event ( MOUSEEVENTF_LEFTUP , 0 , 0 , 0 , 1 )
26 mouse_event ( MOUSEEVENTF_LEFTDOWN , 0 , 0 , 0 , 1 )
27 mouse_event ( MOUSEEVENTF_LEFTUP , 0 , 0 , 0 , 1 )
28 Threading . Thread . Sleep ( 150 )
29
30 ' Clipboard . GetText ()
31 ' Text . StartsWith ( "99" )
32 Dim xxx As String
33 ' xxx = WebBrowser1 . DocumentText ()
34 ' WebBrowser1 . DocumentText () = "99"
35 ' SendKeys . Send ( "99" )
36
37 End Sub
komme ich bis zur Selektion des Eingabefeldes.
Mit Ctr-V kann ich jetzt die gewünschte Eingabe per Hand vornehmen. Wie
bekomme ich vb dazu, den Text im selektierten Textfeld zu ersetzen?
29.01.2015 12:53 :
Bearbeitet durch User
von
grundschüler (Gast)
29.01.2015 13:04
Arc Net schrieb:
vielen Dank für die Antwort1
2
3 < input id = "contactPhoneNumberField-Inp" type = "text" class = "gui-input-field text" maxlength = "55" alt = "" >
4
5 ....
6 WebBrowser1 . Document . GetElementById ( "contactPhoneNumberField-Inp" ). SetAttribute ( "value" , "555" )
geht aber leider auch nicht
von
grundschüler (Gast)
29.01.2015 15:50
problem war das refresh des browsers. Mit einem timer geht es einen
Schritt weiter, danke für den Hinweis von Arcnet
Timer1.Stop()
WebBrowser1.Document.GetElementById("contactPhoneNumberField-Inp").SetAt
tribute("value", "555")
grundschüler schrieb:
> Arc Net schrieb:
>
>
> vielen Dank für die Antwort
> 1 >
2 > < input id = "contactPhoneNumberField-Inp" type = "text"
3 > class = "gui-input-field text" maxlength = "55" alt = "" >
4 >
5 > ....
6 > WebBrowser1 . Document . GetElementById ( "contactPhoneNumberField-Inp" ). SetAttribute ( "value" ,
7 > "555" )
8 >
> geht aber leider auch nicht
Was geht nicht bzw. was liefert GetElementById zurück bzw. mal ansehen
was alles in dem zurückgelieferten HtmlElement steht (Children,
InnerHtml).
Edit: Statt Timer vielleicht auf das DocumentCompleted-Ereignis des
WebBrowser-Controls reagieren
29.01.2015 15:53 :
Bearbeitet durch User
von
grundschüler (Gast)
29.01.2015 16:46
Arc Net schrieb:
> Edit: Statt Timer vielleicht auf das DocumentCompleted-Ereignis des
das hatte ich versucht. WebBrowser1_DocumentCompleted kommt nicht. Bei
refresh springt der Webbrowser auf die Ausgangs-Url zurück. Deswegen die
Bastelei mit Cursor/ Maustasten. Mit Timern funktioniert das ganze jetzt
perfekt:1 Private Sub Timer1_Tick ( ByVal sender As System . Object , ByVal e As System . EventArgs ) Handles Timer1 . Tick
2 Timer1 . Stop ()
3 If status = 0 Then
4 setFaxDial ()
5
6 End If
7
8 If status = 1 Then
9 status = 2
10 Timer1 . Stop ()
11 Timer2 . Enabled = True
12 Timer2 . Interval = 1000
13 Timer2 . Start ()
14 WebBrowser1 . Document . GetElementById ( "contactPhoneNumberField-Inp" ). SetAttribute ( "value" , Clipboard . GetText ())
15 status = 2
16 ' SendKeys . Send ( "{TAB}" )
17 ' SendKeys . Send ( "{Enter}" )
18 End If
19 If status = 3 Then
20 Me . Finalize ()
21 End If
22
23 End Sub
24
25 Private Sub Timer2_Tick ( ByVal sender As System . Object , ByVal e As System . EventArgs ) Handles Timer2 . Tick
26 If status = 2 Then
27 status = 3
28 Timer1 . Start ()
29 SendKeys . Send ( "{TAB}" )
30 SendKeys . Send ( "{Enter}" )
31 End If
32
33 End Sub
Danke für die Unterstützung
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.