Einzelnen Beitrag anzeigen

Kostas

Registriert seit: 14. Mai 2003
Ort: Gerstrhofen
1.060 Beiträge
 
Delphi 10 Seattle Enterprise
 
#4

Re: Einfacher thread der nur ein MessageDlg anzeigt erzeugen

  Alt 3. Jan 2009, 17:23
Hallo SirThornberry,

Über die Delphi Vorlage habe ich mit ein Threadrumpf erzeugen lassen
und ausgeführt. Es wird leider nichts angezeigt. Möglicherweise
hat es was mit ShowMessage zu tun es kommt ja auch aus der VCL.
Zumindest würde ich einen Fehler erwarten, es kommt jedoch nichts.

Hast Du eine Idee?



Delphi-Quellcode:
unit MessageBoxThread;

interface

uses
  Classes, Dialogs;

type
  TMessageBoxThread = class(TThread)
  private
    { Private-Deklarationen }
  protected
    text: string;
    procedure Execute; override;
  public
    constructor Create(msg:string);
  end;

implementation

{ TMessageBoxThread }

constructor TMessageBoxThread.Create(msg:String);
begin
  inherited Create(false);
  text := msg;
  ShowMessage(text); // es passiert nichts
end;

procedure TMessageBoxThread.Execute;
begin
  { Thread-Code hier plazieren }
  ShowMessage(text); // es passiert nichts

end;

end.
Und so sieht der Aufruf des Threads aus:

Delphi-Quellcode:
var ThreadMB: TMessageBoxThread;
begin
  ...
      ThreadMB := TMessageBoxThread(s);
      ThreadMB.Priority := tpLower;
      ThreadMB.Resume;
  Mit Zitat antworten Zitat