Edit - Text rechtsbündig



  • Ich wollte meinen Text im TEdit gerne rechtsbündig statt linksbündig ausrichten, kann aber leider die entsprechende Eigenschaft nicht finden. Dachte erst an Alignment, das gibts da aber gar nicht.

    [ Dieser Beitrag wurde am 01.05.2002 um 23:23 Uhr von Jansen editiert. ]



  • Ich denke, das hier sollte deine Frage klären:
    http://www.bytesandmore.de/rad/cpp/snipp/sc02007.php

    @Jansen: wäre wohl noch ein Beitrag für die FAQ? Hab keinen gefunden und ich denke das ist doch ein häufigeres Problem.

    -junix



  • 🙄 Es wäre mal interessant zu wissen, wieviele Leute die den angegebenen Snippet lesen auf Anhieb wissen, wie der anzuwenden ist. Das wäre dann vielleicht auch was für die FAQ 😉



  • Ja, da fehlt wohl der Hinweis, dass man dafür eine neue Komponente von TEdit ableiten muss.

    Reicht das jetzt schon für die FAQ oder möchte jemand mal eine Komplettlösung für uns hier erarbeiten? 🙂



  • Hehe, ich hatte nich auch schon gefragt, wie das mit der Zeile Code funktinieren soll.

    Also muss ich ein neues Object erstellen was von TEdit erbt und da hau ich das da mit rein. Richtig?



  • Exakt. Einfach eine neue Kompo mit dem Vorfahren TEdit erstellen.

    -junix



  • Ich hab mal schnell ein klitzekleines Beispiel zusammengeschustert. Es wird auf Form1 einfach ein Editfeld erstellt welches die gewünschte Eigenschaft hat.

    Unit1.h

    //---------------------------------------------------------------------------
    #ifndef Unit1H
    #define Unit1H
    //---------------------------------------------------------------------------
    #include <Classes.hpp>
    #include <Controls.hpp>
    #include <StdCtrls.hpp>
    #include <Forms.hpp>
    //---------------------------------------------------------------------------
    class TRightJustifyEdit : public TEdit
    {
        protected:
            void __fastcall CreateParams(TCreateParams &Params);
        private:
        public:
            __fastcall TRightJustifyEdit::TRightJustifyEdit(TComponent *AOwner);
    
    };
    //---------------------------------------------------------------------------
    class TForm1 : public TForm
    {
        __published:    // Von der IDE verwaltete Komponenten
        private:    // Anwender-Deklarationen
            TRightJustifyEdit *Edit1;
        public:     // Anwender-Deklarationen
            __fastcall TForm1(TComponent* Owner);
    };
    //---------------------------------------------------------------------------
    extern PACKAGE TForm1 *Form1;
    //---------------------------------------------------------------------------
    #endif
    

    Unit1.cpp

    //---------------------------------------------------------------------------
    #include <vcl.h>
    #pragma hdrstop
    
    #include "Unit1.h"
    //---------------------------------------------------------------------------
    #pragma package(smart_init)
    #pragma resource "*.dfm"
    TForm1 *Form1;
    //---------------------------------------------------------------------------
    __fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
    {
        Edit1=new TRightJustifyEdit(this);
        Edit1->Parent=this;
        Edit1->Top=100;
        Edit1->Left=50;
    }
    //---------------------------------------------------------------------------
    __fastcall TRightJustifyEdit::TRightJustifyEdit(TComponent *AOwner) : TEdit(AOwner)
    {
    }
    //---------------------------------------------------------------------------
    void __fastcall TRightJustifyEdit::CreateParams(TCreateParams &Params)
    {
        TEdit::CreateParams(Params);
        Params.Style = Params.Style | ES_MULTILINE;
        Params.Style = Params.Style | ES_RIGHT;
    }
    //---------------------------------------------------------------------------
    

    [ Dieser Beitrag wurde am 01.05.2002 um 23:08 Uhr von Peter editiert. ]



  • Wieso diesen Umweg über den Quelltext? Ich würde vorher eine Komponente ableiten (Menü Komponenten->Neue Komponente erstellen und dann als Ursprungskompo "TEdit" auswählen)
    Hat den entscheidenden Vorteil, dass du diese Editfelder dann acuh bequem per wysiwyg erstellen kannst.

    -junix



  • Nun haben wir ja sogar zwei Varianten zur Auswahl, da sollte wohl für jeden was dabei sein. Also ab in's Archiv (wo's nie wieder jemand ansieht ;)).


Anmelden zum Antworten