AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Code strukturieren! Wie macht man es richtig ..
Thema durchsuchen
Ansicht
Themen-Optionen

Code strukturieren! Wie macht man es richtig ..

Ein Thema von EWeiss · begonnen am 10. Okt 2008 · letzter Beitrag vom 16. Okt 2008
Antwort Antwort
Roachford
(Gast)

n/a Beiträge
 
#1

Re: Code strukturieren! Wie macht man es richtig ..

  Alt 12. Okt 2008, 12:33
Zitat von EWeiss:
Ich sende zwei Checkboxen hintereinander bei der zweiten krachts
Hast du für CtrlCheckButton überhaupt eine Instanz angelegt? Hast du dazu irgendwo den Constructor aufgerufen? Und warum nimmst du ein und dieselber Instanz für 2 unterschiedliche CheckBoxen? Wozu dann die Member in der Klasse, wenn sie nur die Werte der letzten Checkbox enthalten?

TurboPascal hat dir nicht umsonst und sehr richtig als Änderung vorgeschlagen die CheckButton Methode zum Constructor umzuformen, also zu Create(). Und damit hättest du jedesmal eine richtige Instanz.

Bei deinem Code: Warum gibst du immer wieder hCtrl weiter (SetAnchorMode(), SetZorder())? Warum definierst du das nicht als Methoden von TSkinCheckButton?

Du übergibst selbst bei der SetCheckButtonStatus() immernoch die eigene Instanz. Wozu? Es ist eine Methode und braucht somit nichts übergeben zu bekommen, da sie eine Methode ist und sich somit nach den Membern richten kann.

Ich kann mich nur nochmal wiederholen: Les dir Grundlagenartikel zum OOP durch!

Wäre das nicht ein besser lesbarer Code?
Delphi-Quellcode:
CheckBox1 := TSkinCheckButton.Create(hMain, PChar(SK_FOLDER + 'BTN_Check.png'),
  'AERO Blur mode', 60, 286, 130, 22, ID_AEROBLUR, SK_BTNTEXTCOLOR, 0);
CheckBox1.SetAnchorMode(ANCHOR_CENTER_HORZ_BOTTOM);
CheckBox1.SetZorder(HWND_TOP);

CheckBox2 := CtrlCheckButton.CheckButton(hMain, PChar(SK_FOLDER + 'BTN_Check.png'),
  'STANDARD mode', 60, 308, 130, 22, ID_AERODISABLE, SK_BTNTEXTCOLOR, 0);
CheckBox2.ButtonStatus := true;
CheckBox2.SetAnchorMode(ANCHOR_CENTER_HORZ_BOTTOM);
CheckBox2.SetZorder(HWND_TOP);
Zitat von EWeiss:
Da kann mir keiner helfen
Und auch wenn ein Smiley hinter ist, bei solchen Sprüchen bekomm ich Ausschlag, schon allein da die Beantwortungsfrequenz in diesem Thread deutlich höher ist als in vielen anderen. Was willste noch mehr? Instant Resolution?
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:16 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz