LemonNinja Skrevet 13. desember 2009 Del Skrevet 13. desember 2009 (endret) Hei! Jeg har akkurat begynt med C# koding så det kommer sikkert flere emner om dette fra meg. Fant heller ikke på en bedre tittel til emnet. Jaja nok om det. Det jeg lurte på var hva jeg har gjort feil i denne koden. Takker på forhånd using System; using System.Windows.Forms; using System.Drawing; class FormWithWorkingButton : Form { // The constructor method for our class public FormWithWorkingButton() { // Set the window title this.Text = "Simple form with working button"; // Add a button and hook it up to an event handler method Button button1 = new Button(); button1.Text = "Click me"; button1.Click += new System.EventHandler(Button1_Click); this.Controls.Add(button1); } static void Main() { // Start a new instance of a forms application, using our class above Application.Run(new FormWithWorkingButton()); } // An event handler that will be run when the button is clicked void Button1_Click(object sender, EventArgs e) { // Change the window title this.Text = "Button was clicked"; } { //Changing the button title Button button1 = new Button(); button1.Text = "You"; } Endret 14. desember 2009 av adrianpip2000 Lenke til kommentar
Qwark Skrevet 13. desember 2009 Del Skrevet 13. desember 2009 (endret) void Button1_Click(object sender, EventArgs e) { // Change the window title this.Text = "Button was clicked"; //Changing the button title Button button1 = new Button(); button1.Text = "You"; } Litt for mange klammer der Endret 13. desember 2009 av Qwark Lenke til kommentar
Wattengård Skrevet 14. desember 2009 Del Skrevet 14. desember 2009 Hjelper ikke hvor mange klammer det er når han lager en ny knapp. Når du skriver Button button1 = new Button(); så har du plutselig en ny instans av knappen. For å endre navnet på knappen du allerede har så må du hente den ut fra formen. Dette er litt vanskelig da du lager knappen i runtime, men siden du gjør dette i "Click"-eventen til knappen så er ditt "sender" objekt knappen din. void Button1_Click(object sender, EventArgs e) { // Change the window title this.Text = "Button was clicked"; //Changing the button title //Button button1 = new Button(); <- ikke slik Button button1 = (Button)sender; // <- men slik. button1.Text = "You"; } Du må kjøre en cast på sender siden du vet at det er en Button, men det vet ikke C# uten at du sier det. -C- Lenke til kommentar
LemonNinja Skrevet 14. desember 2009 Forfatter Del Skrevet 14. desember 2009 Tusen takk for svar! Nå skjønte jeg mye mer Lenke til kommentar
LemonNinja Skrevet 14. desember 2009 Forfatter Del Skrevet 14. desember 2009 Det hjalp visst ikke. Kanskje et bilde hjelper på: HER Lenke til kommentar
lockdog Skrevet 14. desember 2009 Del Skrevet 14. desember 2009 Fjern de to klammene som står ved siden av hverandre. { } Lenke til kommentar
MrEspen Skrevet 14. desember 2009 Del Skrevet 14. desember 2009 Fjern noen klammer: // An event handler that will be run when the button is clicked void Button1_Click(object sender, EventArgs e) { // Change the window title this.Text = "Button was clicked"; //Changing the button title //Button button1 = new Button(); Button button1 = sender as Button; button1.Text = "You"; } Lenke til kommentar
LemonNinja Skrevet 16. desember 2009 Forfatter Del Skrevet 16. desember 2009 (endret) Har prøvd dette men nå fungerer ikke "Debugging" knappen: BILDE Jeg bruker denne koden: using System; using System.Windows.Forms; using System.Drawing; class FormWithWorkingButton : Form { // The constructor method for our class public FormWithWorkingButton() { // Set the window title this.Text = "Simple form with working button"; // Add a button and hook it up to an event handler method Button button1 = new Button(); button1.Text = "Click me"; button1.Click += new System.EventHandler(Button1_Click); this.Controls.Add(button1); } static void Main() { // Start a new instance of a forms application, using our class above Application.Run(new FormWithWorkingButton()); } // An event handler that will be run when the button is clicked void Button1_Click(object sender, EventArgs e) { // Change the window title this.Text = "Button was clicked"; //Changing the button title //Button button1 = new Button(); <- ikke slik Button button1 = (Button)sender; // <- men slik. button1.Text = "You"; } } Endret 16. desember 2009 av adrianpip2000 Lenke til kommentar
MrEspen Skrevet 16. desember 2009 Del Skrevet 16. desember 2009 Ser ut som du har gjort noe slik at .cs filen ikke lenger er del av et prosjekt, hvis du ser helt til høyre ser du i solution explorer at du har en solution men ingen prosjekter, hva du har gjort for å få til deg vet jeg ikke Lenke til kommentar
GeirGrusom Skrevet 16. desember 2009 Del Skrevet 16. desember 2009 Du har åpnet .cs filen i Visual Studio. Åpne heller .csproj eller .sln filen. Eller enklere er å finne frem startup vinduet og trykke på prosjektet der. 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å