LeifOlav Skrevet 15. august 2007 Del Skrevet 15. august 2007 (endret) Hva kan jeg gjøre istedet for å gjør det så innvikla som dette? If TextBox1.Text = 2 Then TextBox2.Show() End If If TextBox1.Text = 3 Then TextBox2.Show() TextBox3.Show() End If If TextBox1.Text = 4 Then TextBox4.Show() TextBox5.Show() TextBox6.Show() End If Beklager den dårlige topic beskrivelsen, men kom ikke på bedre. Endret 15. august 2007 av LeifOlav Lenke til kommentar
Degeim Skrevet 15. august 2007 Del Skrevet 15. august 2007 Select case Textbox1.text case 2 TextBox2.Show() case 3 TextBox2.Show() TextBox3.Show() case 4 TextBox4.Show() TextBox5.Show() TextBox6.Show() end select Skulle gjøre det enklere. Om du vil ha det enda enklere vil det kanskje hjelpe å forklare oss hva du prøver å gjøre. Lenke til kommentar
LeifOlav Skrevet 15. august 2007 Forfatter Del Skrevet 15. august 2007 Vil ha det enda lettere. Det jeg prøver å gjøre er at når jeg skriver inn ett tall fra 1-15 så vil jeg at antallet som står skal komme opp i textboxer. Så om jeg skriver 7, så kommer det 7 tekstbokser som viser. De resterende 8 forblir "visible = false" Lenke til kommentar
aadnk Skrevet 15. august 2007 Del Skrevet 15. august 2007 Legg tekstboksene du ønsker å vise/skjule i en panel (panelBoxes). I den øvrige tekstboksens endringshendelse legger du inn følgende kode: Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox4.TextChanged Dim Value As Integer ' Se om tekstboksens innhold kan konverteres If Integer.TryParse(TextBox1.Text, Value) Then ' Gå gjennom alle tekstboksene i panelet For Each Item As Control In panelBoxes.Controls If Item.GetType Is GetType(TextBox) Then Item.Visible = Value > 0 Value -= 1 End If Next End If End Sub Lenke til kommentar
LeifOlav Skrevet 16. august 2007 Forfatter Del Skrevet 16. august 2007 (endret) den måten virka ikke tror jeg. Fikk det ihvertfall ikke til. Isamme slengen, hvordan skal jeg løse dette her: Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click WebBrowser1.Navigate("HTML") Application.DoEvents() While WebBrowser1.IsBusy Application.DoEvents() End While End Sub [color=green]'Når jeg har trykka på denne knappen så logger den på nettsida..[/color] Private Sub WebBrowser1_DocumentCompleted(ByVal sender As System.Object, ByVal e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted WebBrowser1.Document.All("o").SetAttribute("value", TextBox1.Text) [COLOR=green]'Så setter den inn i "o" det som står i TextBox1.Text[/COLOR] [COLOR=red]Så når jeg trykker en annen knapp så skal den navigere til en annen HTML:[/COLOR] Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click WebBrowser1.Navigate("HTML1") Application.DoEvents() While WebBrowser1.IsBusy Application.DoEvents() End While [COLOR=blue]'Her er det problemet oppstår. Jeg vil at den automatisk skal sette inn noe her og, men hvis jeg legger det til under "button4" så virker det ikke. Det må ligge under "webbrowser1_document complete" Men hvis jeg legger det der så virker det ikke heller pga. da stopper det som allerede står der for videre "prosess". Ikke så lett å forklare, men sånn her ser det ut når det ikke virker:[/COLOR] Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click WebBrowser1.Navigate("HTML") Application.DoEvents() While WebBrowser1.IsBusy Application.DoEvents() End While End Sub Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click WebBrowser1.Navigate("HTML1") Application.DoEvents() While WebBrowser1.IsBusy Application.DoEvents() End While Private Sub WebBrowser1_DocumentCompleted(ByVal sender As System.Object, ByVal e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted WebBrowser1.Document.All("o").SetAttribute("value", TextBox1.Text) WebBrowser1.Document.All("p").SetAttribute("value", TextBox3.Text) Endret 16. august 2007 av LeifOlav Lenke til kommentar
aadnk Skrevet 16. august 2007 Del Skrevet 16. august 2007 NM-bot altså? Hm, du kan vel muligens benytte en Backgroundworker til å eksekvere kodelinjen i DocumentCompleted-hendelsen. Da burde i hvert fall ikke noe låse seg. For øvrig, kan du være litt mer spesifikk med hensyn til koden jeg gav deg? Fikk du en feilmelding? Husk at alle tekstbokskontrollene må legges INN i panelet, og ikke ligge rett utenfor (muligens ved å benytte CTRL+X og CTRL+V). Lenke til kommentar
LeifOlav Skrevet 16. august 2007 Forfatter Del Skrevet 16. august 2007 (endret) NM-bot altså? 9294267[/snapback] Nei, har gitt opp det skitet der Mange nok fra før som fuckker opp der Dessuten bruker de ikke bare en bokstav der, de bruker f.eks "name=brukernavn" og ikke "name=o" Angående den koden så fikk jeg ikke opp noe feilmelding. Jeg lagde et "Panel" og satte inn 4 textboxer. Så ble det sånn her: Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox4.TextChanged Dim Value As Integer ' Se om tekstboksens innhold kan konverteres If Integer.TryParse(TextBox1.Text, Value) Then ' Gå gjennom alle tekstboksene i panelet For Each Item As Control In Panel.Controls If Item.GetType Is GetType(TextBox) Then Item.Visible = Value > 0 Value -= 1 End If Next End If End Sub Så prøvde jeg programmet, men da hadde jeg jo ingen tekstbox hvor jeg kunne skrive inn antall textboxer jeg ville skulle vise. Endret 16. august 2007 av LeifOlav Lenke til kommentar
aadnk Skrevet 16. august 2007 Del Skrevet 16. august 2007 Du kan ikke bare lime inn koden og håpe på det beste. Legg inn fire tekstbokser i et panel. Legg så inn en ny tekstboks med navn txtCount (eller noe sånt - NAVNGI kontrollene i det minste) og erstatt alle forekomster av TextBox1 og TextBox4 i koden jeg gav deg til dette navnet. Lenke til kommentar
Manfred Skrevet 16. august 2007 Del Skrevet 16. august 2007 Vi lander stadig tilbake på det med å faktisk LÆRE seg programmering, PRØVE selv og ikke bare klippe og lime og bli frustrert når det ikke fungerer. Er dette for avansert, så begynn på noe enklere og avansér senere! Lenke til kommentar
LeifOlav Skrevet 16. august 2007 Forfatter Del Skrevet 16. august 2007 Vi lander stadig tilbake på det med å faktisk LÆRE seg programmering, PRØVE selv og ikke bare klippe og lime og bli frustrert når det ikke fungerer. Er dette for avansert, så begynn på noe enklere og avansér senere! 9295202[/snapback] Beste måten å lære på er feiling. Slutt å syt. Skal vedde på at 60% av dine post's er bare syting om hvorfor bruke gamle prog. som VB6 og at du ikke kan begynne på ditt å datt før du har lært deg basicen osv. Lenke til kommentar
Manfred Skrevet 16. august 2007 Del Skrevet 16. august 2007 Så du mener det er en dårlig idé å lære seg det grunnleggende i et programmeringsspråk før du begynner å programmere? Interessant angrepsvinkel. Lenke til kommentar
LeifOlav Skrevet 16. august 2007 Forfatter Del Skrevet 16. august 2007 Hm, du kan vel muligens benytte en Backgroundworker til å eksekvere kodelinjen i DocumentCompleted-hendelsen. Da burde i hvert fall ikke noe låse seg. F.eks i Form_Load? Lenke til kommentar
aadnk Skrevet 17. august 2007 Del Skrevet 17. august 2007 F.eks i Form_Load?9297162[/snapback] Eh, nei. Jeg sa WebBrowser1_DocumentCompleted, ikke Form_Load. Lenke til kommentar
serverside Skrevet 17. august 2007 Del Skrevet 17. august 2007 Du burde kanskje ta en titt på AddControls og FindControls for å løse dette. Bre et lite tips som jeg tror vil gjøre dette langt enklere... Lenke til kommentar
LeifOlav Skrevet 17. august 2007 Forfatter Del Skrevet 17. august 2007 I VB6 er det sånn at man kan skrive inn f.eks WebBrowser1.Document.All("brukernavn").SetAttribute("value", bruker.Text) WebBrowser1.Document.All("submit").InvokeMember("click") under Private Sub Form1_Load. Om man gjør dette i VB 2005 så vil dette dukke opp når du prøver programmet: http://dump.no/files/03895573f596/bilde.jpg Hvordan kan det løses? Lenke til kommentar
aadnk Skrevet 17. august 2007 Del Skrevet 17. august 2007 Hm. Kjør først navigate og bruk en løkke til å vente til isBusy er False (kall gjerne Application.DoEvents innenfor løkken for å unngå at programmet låser seg). Deretter kan du kjøre koden du vanligvis kjører i Form_Load. Lenke til kommentar
Manfred Skrevet 17. august 2007 Del Skrevet 17. august 2007 Nordicmafia.net, ja... Jeez... Lenke til kommentar
LeifOlav Skrevet 18. august 2007 Forfatter Del Skrevet 18. august 2007 Tenkte du ville kommentere det ja ^^.. Dette var bare en reproduksjon av problemet som oppstod, og bildet kommer fra praetox sin side .. Skal ikke bruke dette til nordicmafia. Shade / Praetox fikser mer enn nok på nm for oss fra før Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå