Announcement

Collapse
No announcement yet.

TEdit - Text rechtsbündig?

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

  • TEdit - Text rechtsbündig?

    Hallo Leute,

    bin noch relativ neu beim builden in C++.
    Kann mir jemand sagen, wie ich die Texteingabe rechtsbündig eingeben kann, und wie bekomme ich automatisch den tausender-Punkt?

    Gruß Lothar

  • #2
    Hallo,<br>

    wenn mich mich nicht alles taeuscht muß man der Komponente beim erstellen mitteilen, daß sie rechtsbuendig darstellen soll.<br>
    Erstelle eine neue Komponente abgeleitet von TEdit.<br>
    Erstelle unter protected die Funktion<br>
    void __fastcall CreateParams(TCreateParams & Params);<br>
    <br>
    void __fastcall CreateParams(TCreateParams & Params)<br>
    {<br>
    TEdit::CreateParams(Params);<br>
    Params.Style |= ES_RIGHT;<br>
    }<br
    <br>
    Beim tausender-Punkt muß ich leider passen.<br>
    <br>
    Chri

    Comment


    • #3
      Hallo,

      wenn Du zur Ausgabe der Daten ein Editfeld benutzt, dann kannst Du im Ereignis OnExit die Ausgabe mit FormatFloat Deinen Wünschen entsprechend formatieren.

      z.B.:
      float ff = 1234.2567;
      Edit1->Text = FormatFloat(",##.###", ff);
      ergibt die Ausgabe 1.234,257
      In der Borlandhilfe erhälst Du Auskunft was die Formatzeichen bewirken.

      Hors

      Comment


      • #4
        Hallo Chris,

        wie? - neue Komponente erstellen!
        und was meinst Du mit "unter protected"
        Sorry, aber bin noch nicht so fitt.

        Lotha

        Comment


        • #5
          Hallo Lothar,<br>
          ich versuch mal zu beschreiben was Du machen mußt.Da ich den C++Builder in englisch installiert habe, kann es sein daß einzelne Bezeichnungen nicht 100% übereinstimmen<br>
          <br>
          Erstelle ein neues Package<br>
          Menü Datei -> Neu -> Package<br>
          In dem Fenster, wo Package drüber steht auf Add/hinzufügen klicken<br>
          Tabulator New Component/Neue Komponete aktivieren<br>
          In der ComboBox Ancestor Type/Vorfahrentyp TEdit eintragen<br>
          Darunter in Class name/Klassenname den Namen eintragen wie Du Deine Klasse nennen willst zB. TEditRight<br>
          Darunter in ComboBox Palet Page/Palettenseite den Namen eintragen auf welcher Palette Deine Komponete in der IDE erscheinen soll. Entweder eine vorhanden auswählen oder einfach eine neue anlegen in dem Du einfach einen Namen wählst, der nicht in der Liste zB. "Meine Komponenten"<br>
          In Unit File Name/Unit Datei Name den Namen der Datei angeben in der Deine Klasse deklariert und implementiert wird.<br>
          <br>
          Die Header-Datei soll dann etwa so aus aussehen<br>
          <br>
          class PACKAGE TEditRight : public TEdit<br>
          {<br>
          private:<br>
          protected:<br>
          void __fastcall CreateParams(TCreateParams & Params);<br>
          public:<br>
          __fastcall TEditRight(TComponent* Owner);<br>
          __published:<br>
          };<br>
          <br>
          In der CPP-Datei folgendes einfügen<br><br>
          void __fastcall TEditRight::CreateParams(TCreateParams & Params)<br>
          {<br>
          TEdit::CreateParams(Params);<br>
          Params.Style |= ES_RIGHT;<br>
          }<br>
          Im Fenster mit Package drüber "installieren" drücken<bR>
          Wenn Du noch nicht gespeichert hast mußt Du jetzt speichern<bR>
          Fertig<br>
          Du kannst jetzt ein Projekt nehmen und Deine Komponente von der Palette auf das Formular ziehen<br>
          <br>
          Chri

          Comment


          • #6
            Danke Chris,
            war echt super von Dir.

            Thank'

            Comment

            Working...
            X