AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Eigenen MessageDlg verwenden

Ein Thema von DataCool · begonnen am 20. Jul 2006 · letzter Beitrag vom 21. Jul 2006
 
Benutzerbild von DataCool
DataCool

Registriert seit: 10. Feb 2003
Ort: Lingen
909 Beiträge
 
Delphi 10.3 Rio
 
#1

Eigenen MessageDlg verwenden

  Alt 20. Jul 2006, 12:34
Hi,

ich möchte gerne in eiuner Anwendung, einen eigenen MessageDlg verwenden.
Ich habe das ganze auch schon fast geschafft,
allerdings habe ich ein paar kleine Probleme die richtige Breite und Höhe
für die "Message" zu berechnen.

Die Message soll in einem Label dargestellt werden.
Das Label ist über Anchors so gesetzt das es sich in alle Richtungen
vergrößert. Ausserdem ist die Eigenschaft "WordWrap" auf "true" gesetzt.

Ich habe jetzt in folgendem Quellcode versucht über Textwidth und TextHeight die Daten zu berechnen.
Allerdings liefert das ganze bei längeren Texten das falsche Ergebnis.
Hat jemand eine Ahnung warum ? Bzw. Hat jemand eine bessere Idee ?

Delphi-Quellcode:
  // use Stringlist to detect line breaks
  strL := TStringList.Create;
  try
    strL.Text := MsgText;
    // init with 0
    iWidth := 0;
    // Checkout length of each line
    for i := 0 to strL.Count - 1 do begin
      iTmp := lab_Message.Canvas.TextWidth(strL[i]);
      if iTmp > iWidth then
        iWidth := iTmp;
    end;
    // check minimum width
    if iWidth < 235 then
      iWidth := 235;
    // set form with(label width + width for other controls)
    self.Width := iWidth + 50;

    // calculate height
    iTmp := (lab_Message.Canvas.TextHeight(msgText)+2) * strL.Count;
    // add height for other controls
    inc(iTmp,120);
    // set height
    self.Height := iTmp ;
  finally
    FreeAndNil(strL);
  end;
  // center ok button
  cmd_OK.Left := (self.Width div 2) - (cmd_ok.Width div 2);
  // set label caption
  lab_Message.Caption := msgText;
  show;
Danke und Gruß Data
Der Horizont vieler Menschen ist ein Kreis mit Radius Null, und das nennen sie ihren Standpunkt.
  Mit Zitat antworten Zitat
 


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 13:39 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 by Thomas Breitkreuz