Entwickler-Ecke

WinForms - form2 soll eine aktion in form1 ausführen.


jaxl15 - So 25.09.11 14:14
Titel: form2 soll eine aktion in form1 ausführen.

C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Threading;
using System.IO;

namespace Skillit
{
    public partial class Schlafenpage : Form
    {
        public Form1 myform;
        public Sachen mySachen;
        public Schlafenpage()
        {
            InitializeComponent();
            mySachen = new Sachen();
            myform = new Form1();            
        }

        private void schlafen_Click(object sender, EventArgs e)
        {            
            double z;
            int i;
            z = mySachen.schlafen * (100.0 - mySachen.energie);
            z = z / 10;
            for (i = 0; i < 100; i++)
            {
                Thread.Sleep(Convert.ToInt32(z));
                ZeitAnzeige.Value = i * 1;
            }
            ZeitAnzeige.Value = 100;
            mySachen.energie = 100;
            myform.aktion();
            Close();
        }

        private void Schlafenpage_Load(object sender, EventArgs e)
        {

        }
    }
}


C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
//***********************************************************************************
// die methode myform.aktion(); 
// soll durchgeführt werde, sie wird auch durchgeführt aber die werte ändern sich nicht.
// es gibt keine fehlermeldungen.

        public void aktion()
        {
            Geld.Text = Convert.ToString(mySachen.geld);
            Energie.Text = Convert.ToString(mySachen.energie);
            kurs = Convert.ToInt32(mySachen.kurs);
            logik = Convert.ToInt32(mySachen.logik);
            training = Convert.ToInt32(mySachen.training);
            schlafen = Convert.ToInt32(mySachen.schlafen);
            EnergieLeiste.Value = Convert.ToInt32(Energie.Text);            
        }

// bitte helft mir. Danke

Moderiert von user profile iconTh69: C#-Tags hinzugefügt


Th69 - So 25.09.11 14:54

Hallo jaxl15,

unter deinen bisherigen Beiträgen Der Inhalt des Labels wird nicht verändert [http://www.c-sharp-forum.de/viewtopic.php?t=107117] und 2 Forms greifen auf eine Klasse zu... funktioniert nicht... [http://www.c-sharp-forum.de/viewtopic.php?t=107133] wurde dir die Antwort doch schon gegeben (denn du machst hier wieder den gleichen Fehler, d.h. du erzeugst eine neue Form anstatt eine Referenz zu benutzen).

Daher schließe ich diesen Beitrag - damit nicht noch mal alles wiederholt werden muß...