Solved

ShowMessage

Posted on 2006-07-18
7
544 Views
Last Modified: 2010-05-18
Hi.

I want to show a message when a proc starts and then terminate it when the calculation end.
(form is hidden)
How can i show a message without the ok button and then kill it ?
0
Comment
Question by:CodedK
7 Comments
 
LVL 25

Expert Comment

by:Tomas Helgi Johannsson
ID: 17129425
    Hi!
Why don't you create a Form displaying the message in a Label
Displaying and hiding form is easy ;)

Regards,
  Tomas Helgi
0
 
LVL 10

Expert Comment

by:atul_parmar
ID: 17129609
Another reason to go with TomasHelgi is that the ShowMessage and MessageDlg are modal, so until it is terminated, it won't execute the next line of code. So, even if you use your form to display the msg, it should be modalless.
0
 
LVL 16

Author Comment

by:CodedK
ID: 17130305
Hi, thanks for the replys.
If there is no other way to handle the message of course i'll have to use the form...
I was thinking if someone has a source or a customized message dialog that can accept commands.

0
Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

 
LVL 9

Expert Comment

by:ginsonic
ID: 17131493
MessageDlg('Welcome!', mtCustom, [], 0) ;
0
 
LVL 9

Accepted Solution

by:
ginsonic earned 250 total points
ID: 17131657
Show message with:

MessageDlg('I wish to do something in this time!', mtWarning, [], 0);

when all is done then close with:
var wh:HWND;
begin
  wh:=FindWindowByTitle('Warning');
  PostMessage (Wh, WM_CLOSE, 0, 0);
end;

the function for FindWindowByTitle is:

function TForm1.FindWindowByTitle(WindowTitle: string): Hwnd;
var
  NextHandle: Hwnd;
  NextTitle: array[0..260] of char;
begin
  NextHandle := GetWindow(Application.Handle, GW_HWNDFIRST);
  while NextHandle > 0 do begin
    GetWindowText(NextHandle, NextTitle, 255);
    if pos(WindowTitle, StrPas(NextTitle)) <> 0 then
    begin
      result := NextHandle;
      exit;
    end else
      NextHandle := GetWindow(NextHandle, GW_HWNDNEXT);
  end;
  result := 0;
end;
0
 
LVL 16

Author Comment

by:CodedK
ID: 17132114
Thank you GinSonic :)
0
 
LVL 9

Expert Comment

by:ginsonic
ID: 17138433
My pleasure!
0

Featured Post

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Have you ever had your Delphi form/application just hanging while waiting for data to load? This is the article to read if you want to learn some things about adding threads for data loading in the background. First, I'll setup a general applica…
Introduction Raise your hands if you were as upset with FireMonkey as I was when I discovered that there was no TListview.  I use TListView in almost all of my applications I've written, and I was not going to compromise by resorting to TStringGrid…
Although Jacob Bernoulli (1654-1705) has been credited as the creator of "Binomial Distribution Table", Gottfried Leibniz (1646-1716) did his dissertation on the subject in 1666; Leibniz you may recall is the co-inventor of "Calculus" and beat Isaac…
In an interesting question (https://www.experts-exchange.com/questions/29008360/) here at Experts Exchange, a member asked how to split a single image into multiple images. The primary usage for this is to place many photographs on a flatbed scanner…

830 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question