Tab in ShowMessage

Für Fragen zur Programmiersprache auf welcher Lazarus aufbaut
Antworten
Sayawa
Beiträge: 13
Registriert: Do 26. Apr 2018, 15:15
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit

Tab in ShowMessage

Beitrag von Sayawa »

Hallo Zusammen,

ist es in der ShowMessage möglich Text über Tab einzurücken?
Für ein Enter nutze ich #10#13, gibt es so eine Kombination auch für Tab?

Benutzeravatar
m.fuchs
Lazarusforum e. V.
Beiträge: 2636
Registriert: Fr 22. Sep 2006, 19:32
OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
CPU-Target: x86, x64, arm
Wohnort: Berlin
Kontaktdaten:

Re: Tab in ShowMessage

Beitrag von m.fuchs »

#9 ist das was du suchst.

BTW: Nimm bitte an Stelle von #10#13 LineEnding. Dann ist es plattformunabhängig.
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de

Sayawa
Beiträge: 13
Registriert: Do 26. Apr 2018, 15:15
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit

Re: Tab in ShowMessage

Beitrag von Sayawa »

Leider hat das nicht funktioniert.
Ist in meinem Code etwas falsch?

Code: Alles auswählen

 
ShowMessage('Es wurden folgende Angaben geändert:' + #10#13 + 'Gerät: ' + #9 + strGeraet);
 

Benutzeravatar
m.fuchs
Lazarusforum e. V.
Beiträge: 2636
Registriert: Fr 22. Sep 2006, 19:32
OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
CPU-Target: x86, x64, arm
Wohnort: Berlin
Kontaktdaten:

Re: Tab in ShowMessage

Beitrag von m.fuchs »

Sayawa hat geschrieben:Leider hat das nicht funktioniert.

Das ist sehr unspezifisch.

Was ist passiert? Was hast du erwartet?

Code: Alles auswählen

strGeraet := 'Leopard2A6';
ShowMessage('Es wurden folgende Angaben geändert:' + #10#13 + 'Gerät: ' + #9 + strGeraet);   

Das produziert bei mir:

Bild
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de

Sayawa
Beiträge: 13
Registriert: Do 26. Apr 2018, 15:15
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit

Re: Tab in ShowMessage

Beitrag von Sayawa »

Leider ist das nichts eingerückt

Bild

Benutzeravatar
m.fuchs
Lazarusforum e. V.
Beiträge: 2636
Registriert: Fr 22. Sep 2006, 19:32
OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
CPU-Target: x86, x64, arm
Wohnort: Berlin
Kontaktdaten:

Re: Tab in ShowMessage

Beitrag von m.fuchs »

Habs gerade mal unter Windows ausprobiert, offenbar funktioniert Tab dort bei ShowMessage nicht. (Wenn man damit die Caption eines Labels füllt, geht es aber.)

Dann musst du das wohl mit ein paar Leerzeichen machen. Nicht ganz so schön, aber vielleicht reicht es ja.
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de

siro
Beiträge: 730
Registriert: Di 23. Aug 2016, 14:25
OS, Lazarus, FPC: Windows 11
CPU-Target: 64Bit
Wohnort: Berlin

Re: Tab in ShowMessage

Beitrag von siro »

TABs sind ja nicht wirklich festgelegt, wie weit der Abstand ist.
Oft lässt eine Software auch zu, dass TABs durch Spaces ersetzt werden.
Um es für die eigene Anwendung definiert zu machen würde ich so vorgehen:

Code: Alles auswählen

 
const TAB_4 = '    ';
const TAB_8 = '        ';
 
ShowMessage('Hallo' + TAB_4 + 'Du' + TAB_8 + 'Wie gehts');
 
 


Siro
Grüße von Siro
Bevor ich "C" ertragen muß, nehm ich lieber Lazarus...

Warf
Beiträge: 1908
Registriert: Di 23. Sep 2014, 17:46
OS, Lazarus, FPC: Win10 | Linux
CPU-Target: x86_64

Re: Tab in ShowMessage

Beitrag von Warf »

ShowMessage ist so eine Sache (vor allem unter Windows, unter Linux weiß ich es nicht). So trimmt Windows den Text (Also Leerzeichen vorn und hinten werden abgeschnitten) und ich glaube sogar das alle spaces die mehr als 1 Leerzeichen brauchen auf 1 Leerzeichen gekürzt werden.
Dazu kommt noch das ShowMessage zu lange lines einfach abschneidet (bzw ... hinsetzt).

Daher kann ich empfehlen wenn du mehr gestalterische freihet brauchst, oder mehr als 1-2 Zeilen anzeigen willst, erstell ne neue Form als Dialog, Füge einen Button hinzu und setze sein ModelResult auf mrOK, und füge eine Öffentliche Methode ShowContent(Params) hinzu, welche dann showModal aufruft. Params sind dann z.B. Caption, Text, oder sogar noch mehr.

Mathias
Beiträge: 6160
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: Tab in ShowMessage

Beitrag von Mathias »

ShowMessage ist so eine Sache (vor allem unter Windows, unter Linux weiß ich es nicht). So trimmt Windows den Text (Also Leerzeichen vorn und hinten werden abgeschnitten) und ich glaube sogar das alle spaces die mehr als 1 Leerzeichen brauchen auf 1 Leerzeichen gekürzt werden.
Ich habe es gerade mit WinXP probiert, dort kommen alle Space.
Oder ist dies etwa erst bei neueren Win der Fall ?

PS: Habe es noch mit Win10 probiert, auch dort kommen die Spaces,
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Antworten