Avatar billede plugin- Nybegynder
06. juni 2005 - 17:20 Der er 4 kommentarer og
1 løsning

henvisning til label i klasse?

Hej eksperter

Hvordan ligger man en string ind under en label som ligger i public static void Main(string[] args), fra en klasse?

Hvis vi f.eks har Class1 hvor vi kører en metode der skal skrive variablen "tekst" i den label som ligger under Main, hvordan gøres det så?
Avatar billede burningice Nybegynder
06. juni 2005 - 18:08 #1
Den label der ligger under Main? Altså du har oprettet et label-object i din Main-metode?

Umiddelbart lyder det som du blander noget Console og Forms-programmering sammen. I et Forms-program vil man typisk have en linje ala Application.Run(new EnFormKlasse()); som så opretter en instans af EnFormKlasse og kører den som program. I denne klasse vil der så være en constructor som oprettet f.eks. en Label og måske en knap. Ligeledes kunne der være en metode der blev udført når knappen blev trykket på som så satte noget tekst på ens label.

Tror det vil være bedst hvis du enten prøver at forklare lidt mere i detaljer eller viser noget kode.
Avatar billede plugin- Nybegynder
06. juni 2005 - 18:15 #2
okay :) jeg har oprettet et label i mit forms-program som hedder label1. Så har jeg oprettet en klasse hvori der tegnes en sprite (PlayerSprite)... jeg har så det problem at jeg har en variable i PlayerSprite som jeg ikke er sikker på indeholder det som den skal... (jeg er midt i noget fejlfinding) og derfor vil jeg gerne udskrive den til min label i formen.

koden som opretter mit label ser således ud:

public MainForm()
        {
            //
            // The InitializeComponent() call is required for Windows Forms designer support.
            //
            InitializeComponent();
           
           
           
            //
            // TODO: Add constructor code after the InitializeComponent() call.
            //
        }
       
        [STAThread]
        public static void Main(string[] args)
        {
            Application.Run(new MainForm());
        }
       
        #region Windows Forms Designer generated code
        /// <summary>
        /// This method is required for Windows Forms designer support.
        /// Do not change the method contents inside the source code editor. The Forms designer might
        /// not be able to load this method if it was changed manually.
        /// </summary>
        private void InitializeComponent() {

            this.label1 = new System.Windows.Forms.Label();

            // label1
            //
            this.label1.BackColor = System.Drawing.SystemColors.ControlDarkDark;
            this.label1.Location = new System.Drawing.Point(136, 232);
            this.label1.Name = "label1";
            this.label1.Size = new System.Drawing.Size(80, 25);
            this.label1.TabIndex = 0;
            this.label1.Text = "Select a crewmember";
            this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;

}

og det er altså den label jeg gerne vil udskrive til fra klassen: PlayerSprite. Hvordan gøres dette? Der skal vel stå noget foran label ku jeg forestille mig for at den kan henvise til Mainformen - ?.label1.Text = "hejsa";
Avatar billede plugin- Nybegynder
06. juni 2005 - 18:20 #3
kan godt være der mangler et par }} men jeg kortede det bare ned for at I ku få en ide om hvordan koden ser ud.. og den virker som den skal.. jeg skal bare have noget tekst i den fra en klasse
Avatar billede burningice Nybegynder
07. juni 2005 - 16:12 #4
i din PlayerSprite bliver du nødt til at have en reference til din Form-object. Dette kan gøres ved at sende referencen med til PlayerSprite i det du opretter den.

Dette spm omhandler nøjagtig den samme problematik: http://eksperten.dk/spm/623879

Men det lyder mere som noget debugging, hvorfor bruger du ikke Debug.WriteLine istedet=
Avatar billede plugin- Nybegynder
04. juli 2005 - 09:49 #5
Fordi jeg programmere i #develop... fandt en anden måde at gøre det på, så lukker spm
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester