全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1522
推到 Plurk!
推到 Facebook!

如何在第一個form 出現前提示user 程式已在執行

尚未結案
tacheng6
一般會員


發表:3
回覆:1
積分:0
註冊:2003-03-14

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-05-08 23:56:59 IP:211.75.xxx.xxx 未訂閱
如何在第一個form 出現前提示user 程式已在執行
ddy
站務副站長


發表:262
回覆:2105
積分:1169
註冊:2002-07-13

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-05-09 00:30:27 IP:61.59.xxx.xxx 未訂閱
本站已有討論 請參考 【問題】關於如何避免程式重複執行  http://delphi.ktop.com.tw/topic.php?topic_id=20777     發表人 - ddy 於 2003/05/09 00:32:48
tacheng6
一般會員


發表:3
回覆:1
積分:0
註冊:2003-03-14

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-05-12 08:28:07 IP:210.243.xxx.xxx 未訂閱
Sorry,這不是我要的答案,或許是我說明的不夠清楚,我的問題是: 我有一支程式約 2mb , 執行時會先去許多table讀資料,並做一些check動作, 在做完這些check , 第一個 form 才會出現(約20-40 秒),而往往user以為沒點到該程式,所以會再次點他,而啟動第2次(這程式是允許重複執行的), 我的期望是當user有執行到這程式時,在第一個 form 出現前先show個 message 告訴user已經在執行了
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-05-12 08:36:58 IP:202.39.xxx.xxx 未訂閱
您需要的是 slpash form 的功能 參考: http://www.bsdg.org/swag/DELPHI/0255.PAS.html    --- 每個人都是一本書
Justmade
版主


發表:94
回覆:1934
積分:2030
註冊:2003-03-12

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-05-12 08:48:59 IP:218.16.xxx.xxx 未訂閱
procedure TMainForm.FormShow(Sender: TObject);
var
SplashForm : TForm;
LB : TLabel;
begin
  SplashForm := TForm.Create(Application);
  LB := TLabel.Create(SplashForm);
  try
    SplashForm.Height := 100;
    SplashFOrm.Width := 200;
    SplashForm.BorderStyle := bsNone;
    SplashForm.position := poDesktopCenter;
    SplashForm.Font.Charset := CHINESEBIG5_CHARSET;
    LB.Parent := SplashForm;
    LB.Caption := '正在準備資料庫,請稍侯...';
    LB.Top := 40;
    LB.Left := 20;
    SplashForm.Show;
    Application.ProcessMessages;
    sleep(10000); // 測試用停十秒,請刪掉它
    // 你開 table 及 checking 的地方
    // ....
  finally
    LB.Free;
    SplashForm.Free;
  end;
end;    
註 : 寫好後才發現 hagar 兄已作答,不過既寫了照貼罷
chih
版主


發表:48
回覆:1186
積分:639
註冊:2002-04-02

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-05-12 08:51:50 IP:211.74.xxx.xxx 未訂閱
提供一個做法供參考.. 1.new一個Form->Name:Wait..上面擺一個Label.Capton:='程式已執行' 2.user點按鈕時,
procedure TForm1.Button1Click(Sender: TObject);
begin
  try
     WaitFM := TWaitFM.create(self);
     WaitFM.show;
     WaitFM.Label1.Caption := '檢查資料中,請稍待...';//這裡可以更該Label顯示的文字
     //這裡去做你的check
     WaitFM.Update;
  finally
     WaitFM.free;
  end;
end;
TRY TRY SEE
引言: Sorry,這不是我要的答案,或許是我說明的不夠清楚,我的問題是: 我有一支程式約 2mb , 執行時會先去許多table讀資料,並做一些check動作, 在做完這些check , 第一個 form 才會出現(約20-40 秒),而往往user以為沒點到該程式,所以會再次點他,而啟動第2次(這程式是允許重複執行的), 我的期望是當user有執行到這程式時,在第一個 form 出現前先show個 message 告訴user已經在執行了
loverlin
一般會員


發表:1
回覆:35
積分:22
註冊:2002-07-15

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-05-13 12:25:18 IP:61.228.xxx.xxx 未訂閱
你可以先秀主 Form~ 秀出後再建立一個 Thread,由 Thread 去做讀取資料的東西,讀完後再使用 PostMessage 或 SendMessage 主通知主 Form~ kk-boy
------
kk-boy
Ktop_Robot
站務副站長


發表:0
回覆:3511
積分:0
註冊:2007-04-17

發送簡訊給我
#8 引用回覆 回覆 發表時間:2007-04-30 13:45:15 IP:000.000.xxx.xxx 未訂閱
提問者您好:


以上回應是否已得到滿意的答覆?


若已得到滿意的答覆,請在一週內結案,否則請在一週內回覆還有什麼未盡事宜,不然,
將由版主(尚無版主之區域將由副站長或站長)自由心證,選擇較合適之解答予以結案處理,
被選上之答題者同樣會有加分獎勵同時發問者將受到扣 1 分的處分。不便之處,請見諒。


有問有答有結案,才能有良性的互動,良好的討論環境需要大家共同維護,感謝您的配合。

------
我是機器人,我不接受簡訊.
系統時間:2024-04-25 19:23:49
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!