Mehrere Ereignisse für Button??
-
Noodles schrieb:
Welchen Sinn soll das haben? Was hast Du denn genau vor?
es geht mir nur ums verständnis, da ich in einem buch gelesen habe, das OnClick würde alle einem Control zugeordneten Clickereignisse auslösen!
Und da ist meine frage, gibt es mehrere? Oder wie ist das gemeint, bzw für was ist die OnClick Methode da?
-
asadsad schrieb:
Und da ist meine frage, gibt es mehrere? Oder wie ist das gemeint, bzw für was ist die OnClick Methode da?
Na wie der Name bereits sagt, für ein Click Ereignis, es wird also ausgelöst, wenn Du auf den Button clickst.
-
SeboStone schrieb:
asadsad schrieb:
Und da ist meine frage, gibt es mehrere? Oder wie ist das gemeint, bzw für was ist die OnClick Methode da?
Na wie der Name bereits sagt, für ein Click Ereignis, es wird also ausgelöst, wenn Du auf den Button clickst.
ja schon klar, aber was ist damit gemeint, das die Basefunktion ALLE dem Ereignishanlder zugeordneten Ereignisse auslöst?
-
Würde ja wie bereits gesagt keine SInn machen. Code kommt in die Ereignisfunktion sowieso nicht. Dort sollte man dann Funktionen aufrufen und wie viele das sind ist ja egal. Somit braucht es auch keine > 1 Ereignisfunktionen.
-
Unix-Tom schrieb:
Würde ja wie bereits gesagt keine SInn machen. Code kommt in die Ereignisfunktion sowieso nicht. Dort sollte man dann Funktionen aufrufen und wie viele das sind ist ja egal. Somit braucht es auch keine > 1 Ereignisfunktionen.
achso, also in die funktion, die bei doppelklick (zB auf Button im Designer) geöffnet wird, sollte kein code direkt rein?
Sondern nur funktionen, die etwas machen?Und die OnClick-Funktion ist dann praktisch sinnlos für mich?
-
Unix-Tom schrieb:
Würde ja wie bereits gesagt keine SInn machen. Code kommt in die Ereignisfunktion sowieso nicht. Dort sollte man dann Funktionen aufrufen und wie viele das sind ist ja egal. Somit braucht es auch keine > 1 Ereignisfunktionen.
Und wieso, wenn das so ist, weist man Ereignishandler dann mit "+=" zu? Intuitiv würde ich das nicht als "ersetze den letzten Handler durch diesen hier" interpretieren.
-
Man kann mit = einen Delegate zuweisen oder mit += weitere hinzufügen.
Ich vermute, du hast = statt += verwendet.
-
Helium schrieb:
Man kann mit = einen Delegate zuweisen oder mit += weitere hinzufügen.
Ich vermute, du hast = statt += verwendet.
nein, ich habe += verwendet!
ganz klar ist mir das system nicht!Kann man also mehrere Events zuordnen, oder wird nur überschrieben?
-
Helium schrieb:
Ich vermute, du hast = statt += verwendet.
= generiert immer einen Fehler.
asadsad schrieb:
Kann man also mehrere Events zuordnen, oder wird nur überschrieben?
Wird hinzugefügt, nicht überschrieben.
-
SeboStone schrieb:
Helium schrieb:
Ich vermute, du hast = statt += verwendet.
= generiert immer einen Fehler.
asadsad schrieb:
Kann man also mehrere Events zuordnen, oder wird nur überschrieben?
Wird hinzugefügt, nicht überschrieben.
Echt? Also mein Visual Studio 2005 übersetzt mir folgendes ohne zu murren:
class TestKlasse { delegate int MeinDelegate (int a); event MeinDelegate meinEvent; int foo(int x) { return x + 1; } int bar(int x) { return x - 1; } void test() { meinEvent += new MeinDelegate(foo); // mit += meinEvent += new MeinDelegate(bar); // dito meinEvent = new MeinDelegate(foo); // mit = !!! } }
-
Wirklich komisch, bei mir schreit er.
-
OK, sollte so sein, wie du sagst, sprich bei events soll nur += und -= funktionieren, nicht aber =. Bei Delegates soll += -= und = funktionieren.
Nur, wieso meckert der bei mir nicht. In meinen Tests läuft es so, wie man es erwarten könnte, wenn es denn erlaubt wäre.