Hej
Sidder og øver mig i C# programmering og ville starte med noget let.
Så jeg fandt en video om at lave en google search app.
Jeg har lavet det men kan ikke få det til at fungere.
Og kan simplehen ikke finde fejlen.
Jeg vedhæfter projektet.
Håber der er en som kan hjælpe.
På forhånd Tak
Venlig hilsen Thomas
Hjælp til program
-
- Begynder
- Indlæg:6
- Tilmeldt:26. nov 2017, 14:52
- Vedhæftede filer
-
- googlesearch.rar
- (40.42KiB)Downloadet 529 gange
Re: Hjælp til program
Jeg tror ikke din Form2_Load bliver kaldt - hvor har du den fra?
Hvis du i stedet overrider OnLoad eventet, virker det:
Hvis du i stedet overrider OnLoad eventet, virker det:
Kode: Vælg alt
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
webBrowser1.Navigate("https://www.google.dk/search?q=" + stParams["address"]);
}
-
- Begynder
- Indlæg:6
- Tilmeldt:26. nov 2017, 14:52
Re: Hjælp til program
Hej Jeppe
Jeg har taget det fra en video jeg har set. Det var for at prøve at forstå hvordan sådan noget med forms virkede.
Forstår ikke helt hvad det er du har gjort, men kan se det virker.
Derfor har jeg sat mig for at finde noget mere undervisning i programmering.
Jo mere jeg ser og prøver jo sjovere bliver det.
Så glad for at nemprogrammering.dk fik mig igang.
Det er ikke det sidste kursus jeg har taget på denne side.
Tak for det hurtige svar.
Venlig hilsen Thomas
Jeg har taget det fra en video jeg har set. Det var for at prøve at forstå hvordan sådan noget med forms virkede.
Forstår ikke helt hvad det er du har gjort, men kan se det virker.
Derfor har jeg sat mig for at finde noget mere undervisning i programmering.
Jo mere jeg ser og prøver jo sjovere bliver det.
Så glad for at nemprogrammering.dk fik mig igang.
Det er ikke det sidste kursus jeg har taget på denne side.
Tak for det hurtige svar.
Venlig hilsen Thomas
Re: Hjælp til program
Fedt at du er blevet interesseret - og jeg er helt enig, det bliver kun mere og mere spændende jo mere man lærer.
Her er en kort forklaring:
Din Form2.cs nedarver fra Form, som er en klasse Microsoft har lavet til Windows Forms. Den definerer en masse funktionalitet, så du ikke selv skal bygge det hele fra bunden. I Form-klassen er der defineret en række virtual metoder, som betyder at de må overrides af dig, som extender klassen.
OnLoad er en virtual metode som du kan override, da den er defineret således:
protected betyder bare at metoden kun kan kaldes af klassen selv eller typer der extender klassen (lidt ligesom private).
Microsoft har allerede håndteret, at OnLoad bliver kaldt når vinduet 'loades'. Det fede ved nedarv er så at din Form2 klasse i princippet er en "Form" (altså Microsofts definerede form) og du kan så få lov til at specialisere præcist hvad der skal ske når OnLoad kaldes, og dette gør du ved at override den i din klasse.
Koden jeg skrev kalder først base.OnLoad(e);, hvor base er den klasse du nedarver fra. Det betyder egentlig bare at du først lader den gøre det den allerede er defineret til at gøre (en masse opsætning sikkert).
Bagefter (når vinduet er 'sat op') kan du så beskrive at der skal ske noget ekstra i eventet, altså at kalde Navigate på din webBrowser1-component.
Du kan læse lidt om det her: https://www.akadia.com/services/dotnet_ ... phism.html
Det er bestemt givet godt ud at sætte sig ind i lige præcist de her ting, da det er kernen af C# og objekt-orienteret programmering generelt. Skriv hvis du har flere spørgsmål.
Her er en kort forklaring:
Din Form2.cs nedarver fra Form, som er en klasse Microsoft har lavet til Windows Forms. Den definerer en masse funktionalitet, så du ikke selv skal bygge det hele fra bunden. I Form-klassen er der defineret en række virtual metoder, som betyder at de må overrides af dig, som extender klassen.
OnLoad er en virtual metode som du kan override, da den er defineret således:
Kode: Vælg alt
protected virtual void OnLoad(EventArgs e);
Microsoft har allerede håndteret, at OnLoad bliver kaldt når vinduet 'loades'. Det fede ved nedarv er så at din Form2 klasse i princippet er en "Form" (altså Microsofts definerede form) og du kan så få lov til at specialisere præcist hvad der skal ske når OnLoad kaldes, og dette gør du ved at override den i din klasse.
Koden jeg skrev kalder først base.OnLoad(e);, hvor base er den klasse du nedarver fra. Det betyder egentlig bare at du først lader den gøre det den allerede er defineret til at gøre (en masse opsætning sikkert).
Bagefter (når vinduet er 'sat op') kan du så beskrive at der skal ske noget ekstra i eventet, altså at kalde Navigate på din webBrowser1-component.
Du kan læse lidt om det her: https://www.akadia.com/services/dotnet_ ... phism.html
Det er bestemt givet godt ud at sætte sig ind i lige præcist de her ting, da det er kernen af C# og objekt-orienteret programmering generelt. Skriv hvis du har flere spørgsmål.