Announcement

Collapse
No announcement yet.

Bei Checkboxen den Haken in ein Kreuz ändern

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Bei Checkboxen den Haken in ein Kreuz ändern

    Kann die Anzeige der Checkbox geändert werden und wenn ja, wie?

    In der Komponentenpalette ist die Checkbox mit einem Kreuz dargestellt, im Projekt wird dann ein Haken angezeigt.

    Ich würde gerne das Kreuz verwenden.

    Ich verwende Delphi 6 in der Enterprise Edition, als Betriebssystem Windows XP Professional.

    Mit freundlichen Grüßen

    Michael

  • #2
    Hallo Michael,

    die Anzeige der Checkbox ist Betriebssystem-Systemabhängig. Die Anzeige ist also unter z.B. Windows NT/2000 und XP anders.

    Du könntes natürlich eine neue Komponente schreiben und da das Paint-Ereignis überschreiben.

    Gruß
    Richar

    Comment


    • #3
      Hallo,

      wo findet die Definition des Inhaltes für die Checkbox statt?

      Ich habe in den StdCtrl.pas keinen passenden Eintrag gefunden.

      Auch SendMessage brachte so richtig keinen Erfolg, ändere ich den Style in BS_Icon oder BS_Bitmap ist die Caption die Checkbox.

      Eine neue Komponente soll nicht verwendet werden, es sollte zur Laufzeit für einige Checkboxen das Kreuz, für andere der Haken verwendet werden, wenn das geht.

      Mit freundlichen Grüßen

      Michae

      Comment


      • #4
        Hallo,

        die Checkbox ist abgeleitet von TCustomCheckBox, diese greift auf die Windows - Komponente (per Botschaften) zu. Die Checkbox wird also nicht von der Delphi-Komponente erzeugt, sondern von Windows selber. Das Aussehen der Checkbox kann aber meines Wissens nach nicht über Parameter gesteuert werden.

        Vieleicht findest Du etwas als Freeware (versuche http://community.borland.com/homepages/dsp/).

        Mit freundlichen Grüßen
        Richar

        Comment


        • #5
          Das <a href="http://www.ceberus.com/lmd/products/lmdelpack/screenshots2.php3">Elpack</a> würde das gewünschte unterstützen. (Eigene Bitmap für jede CheckBox-Instanz

          Comment


          • #6
            Hallo,

            eine wenig zufrieden stellende, selbst gebastelte "Lösung":

            <PRE>
            begin
            SendMessage(CheckBox1.Handle, BM_SETCHECK, BST_CHECKED, 0);
            SendMessage(CheckBox1.Handle, BM_SETSTYLE, BS_ICON, 0);
            Checkbox1.Width := 14;
            Checkbox1.Height:= 14;
            Checkbox1.Font.Name := 'Arial Black';
            Checkbox1.Font.Style := [fsBold];
            Checkbox1.Caption := 'x';
            CheckBox1.Repaint;
            end
            else
            begin
            SendMessage(CheckBox1.Handle, BM_SETSTYLE, BS_Checkbox, 0);
            CheckBox1.Repaint;
            SendMessage(CheckBox1.Handle, BM_SETCHECK, BST_UNCHECKED, 0);
            end;
            </PRE>

            Da gibt es doch bestimmt noch was besseres, mal sehen, ob ich was finde.

            Danke nochmals.

            Mit freundlichen Grüßen

            Michae

            Comment

            Working...
            X