Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

[Pytanie] Kilka pytań


Rekomendowane odpowiedzi

Opublikowano

Mam taki sobie kod:

 

Public Class Form1

Private Sub BPolacz_Click(sender As Object, e As EventArgs) Handles BPolacz.Click
WebBrowser1.Document.GetElementById("identity").SetAttribute("Value", "Soundiver")
WebBrowser1.Document.GetElementById("password").SetAttribute("Value", "Soundiver123")
WebBrowser1.Document.GetElementById("login").InvokeMember("submit")
WebBrowser1.Navigate("http://soundiver.pl/muzyka/dodaj_muzyke")
WebBrowser2.Navigate("http://soundiver.pl/artysci/dodaj_artyste")
MsgBox("gotowe")
End Sub

Private Sub send_Click(sender As Object, e As EventArgs) Handles send.Click
WebBrowser1.Document.GetElementById("inputTitle1").SetAttribute("value", Uwykonawca.Text & " - " & Utytul.Text)
' WebBrowser1.Document.GetElementById("add_music").InvokeMember("submit")


End Sub

Private Sub Plik_Click(sender As Object, e As EventArgs) Handles Plik.Click
WebBrowser1.Document.GetElementById("inputMusic1").InvokeMember("click")
End Sub

Private Sub okladka_Click(sender As Object, e As EventArgs) Handles okladka.Click
WebBrowser1.Document.GetElementById("inputPhoto1").InvokeMember("click")
End Sub

Private Sub FlatButton1_Click(sender As Object, e As EventArgs) Handles FlatButton1.Click
WebBrowser2.Document.GetElementById("inputPseudo1").SetAttribute("value", wykonawca.Text)
' WebBrowser2.Document.GetElementById("add_artist").InvokeMember("submit")
lblStatus.Text = "Artysta dodany"
End Sub

End Class

 

 

 

1. Program ma logować się na stronę po naciśnięciu BPolacz ale nie zawszę się łączy.. Czemu?

2. Jak nie jest zalogowany a kliknie się np button "send" to wywala błędem bo nie ma takiego obiektu. Da się jakoś zrobić aby sprawdzało na jakiej stronie jest webbrowser a potem jeśli jest na dobrej to działa dalej a jeśli nie to zmienia "lblStatus" na "błąd" ?

Opublikowano

Moim zdaniem to

WebBrowser1.Document.GetElementById("identity").SetAttribute("Value", "Soundiver")
WebBrowser1.Document.GetElementById("password").SetAttribute("Value", "Soundiver123")
WebBrowser1.Document.GetElementById("login").InvokeMember("submit")

powinno być po

WebBrowser1.Navigate("http://soundiver.pl/muzyka/dodaj_muzyke")

czyli tak

Private Sub BPolacz_Click(sender As Object, e As EventArgs) Handles BPolacz.Click
WebBrowser1.Navigate("http://soundiver.pl/muzyka/dodaj_muzyke")
WebBrowser1.Document.GetElementById("identity").SetAttribute("Value", "Soundiver")
WebBrowser1.Document.GetElementById("password").SetAttribute("Value", "Soundiver123")
WebBrowser1.Document.GetElementById("login").InvokeMember("submit")
WebBrowser2.Navigate("http://soundiver.pl/artysci/dodaj_artyste")
MsgBox("gotowe")
End Sub

Bo przed załadowaniem stron nie można nacisnąć buttona

 

 

 

To było do punktu pierwszego

Mój stary nick: damian5602
Nick League Of Legends: Sonaes

Opublikowano

@up a co to niby ma zmienić/naprawić? Błąd z logowaniem polega na tym że za szybko to działa.

 

po wysłaniu formularza powinno poczekać aż strona się załaduje do końca. Wtedy wszystko by działało. Da się jakoś zrobić aby poczekało aż webbrowser się do konca załaduje?

Opublikowano

Wystarczy użyć google..

Private Property pageready As Boolean = False

    Private Sub WaitForPageLoad()
        AddHandler WebBrowser1.DocumentCompleted, New WebBrowserDocumentCompletedEventHandler(AddressOf PageWaiter)
        While Not pageready
            Application.DoEvents()
        End While
        pageready = False
    End Sub

    Private Sub PageWaiter(ByVal sender As Object, ByVal e As WebBrowserDocumentCompletedEventArgs)
        If whatbrowser.ReadyState = WebBrowserReadyState.Complete Then
            pageready = True
            RemoveHandler whatbrowser.DocumentCompleted, New WebBrowserDocumentCompletedEventHandler(AddressOf PageWaiter)
        End If
    End Sub

Użycie

WebBrowser1.navigate("http://google.pl")
WaitForPageLoad()

Nie testowałem.

Opublikowano

@up szukałem i nawet te rozwiązanie znalazłem oraz wiele innych. Ale mi nie działało. Jeszcze spróbuje pokombinować.

 

 

@edit No i nie działa. Wciąż nie czeka na załadowanie się strony.

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...