線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:996
推到 Plurk!
推到 Facebook!

一執行時,cpu就100%的作動,不知為什麼?

尚未結案
黑輪
中階會員


發表:135
回覆:188
積分:64
註冊:2004-01-29

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-11-02 11:29:38 IP:140.124.xxx.xxx 未訂閱
以下是我寫的程式碼,本來有include其它的Form,可是執行時cpu會100%的作動(看工作管理員),使得程式超慢的,不知為什麼,後來先把include的關掉,也是這樣,我只不過使用了 Memo和Edit、Button、OpenDialog,程式一Run(按F9)就cpu100%作動,都還沒執行,為什麼會這樣?  
 
//---------------------------------------------------------------------------    #include 
#pragma hdrstop    #include 
#include     #include "Unit_call.h"      //#include "Unit_view.h"  //其它Form
//#include "Unit_triangle_mesh.h"    //---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
Tcontrol_Form *control_Form;    //---------------------------------------------------------------------------
__fastcall Tcontrol_Form::Tcontrol_Form(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall Tcontrol_Form::Button1Click(TObject *Sender)
{
  //view_Form->ShowModal(); 
//  view_Form->Show(); 
  //control_Form->Hide();        }
//---------------------------------------------------------------------------
void __fastcall Tcontrol_Form::Open1Click(TObject *Sender)
{      //OpenDialog1->Options<Execute())
  {
    szFileName=OpenDialog1->FileName;
    Edit1->Text=szFileName;
    Memo1->Lines->LoadFromFile(szFileName);
  }
    
}
//---------------------------------------------------------------------------    void __fastcall Tcontrol_Form::Button2Click(TObject *Sender)
{
//  Triangle_mesh_Form->Show();     }
//---------------------------------------------------------------------------    
blk5743
高階會員


發表:34
回覆:371
積分:236
註冊:2003-11-17

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-11-02 14:31:24 IP:61.66.xxx.xxx 未訂閱
#include "Unit_call.h" //這是你CPP的Head嗎 Tcontrol_Form //這是什麼??為什麼不用TForm1 Open1Click //是Button嗎 我剛試了一下,三個BUTTON,一個MEMO,一個EDIT及一個OPENDIALOG 按下一個BUTTON來開啟OPENDIALOG不會有什麼問題
黑輪
中階會員


發表:135
回覆:188
積分:64
註冊:2004-01-29

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-11-02 23:08:34 IP:61.228.xxx.xxx 未訂閱
很怪~我發現在按下File的Open時cpu會跑100%,若不按時就正常!~為什麼? 因為cpu100%在跑,我之後多寫的程式跑起就會超慢的,甚至停住 我把完整檔案上傳~ 感謝您的幫忙哦~ 下面為連結 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=59010
blk5743
高階會員


發表:34
回覆:371
積分:236
註冊:2003-11-17

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-11-03 09:03:28 IP:61.66.xxx.xxx 未訂閱
黑輪你好 你的檔案我無法下載 在解壓縮時出現CRC錯誤,所以我沒辦法看到你的CODE 不過我可以打開你的執行檔,我還沒按任何按鈕就CPU100% 你要再重新上傳一次檔案嗎?? Tcontrol_Form //這是什麼??為什麼不用TForm1
黑輪
中階會員


發表:135
回覆:188
積分:64
註冊:2004-01-29

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-11-03 15:34:01 IP:140.124.xxx.xxx 未訂閱
Tcontrol_Form 我只是改一下名字而已啦~我已重新上傳了~ 感謝您哦~
justdo
高階會員


發表:2
回覆:359
積分:222
註冊:2004-08-17

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-11-03 19:44:19 IP:221.169.xxx.xxx 未訂閱
問題並不是出在Tcontrol_Form,而是出在Tview_Form Application->OnIdle=IdleLoop; 這行指令指定系統idle的時候都要來呼叫IdleLoop 當然把系統資源吃光光了..
hdilwy
初階會員


發表:18
回覆:65
積分:41
註冊:2004-08-31

發送簡訊給我
#7 引用回覆 回覆 發表時間:2004-11-03 20:23:26 IP:219.68.xxx.xxx 未訂閱
你進去project->options 修改forms裡 viewform放到available那邊去 因為你viewform有做from create但是你一開始並沒有呼叫它 所以就一直佔著CPU 這樣修改後就沒問題了 我測試過了    然後你有個地方要改 先include viewform的.h檔
 
void __fastcall Tcontrol_Form::Button1Click(TObject *Sender)
{
  //view_Form->ShowModal(); //焦點限制在 View_Form
  Tview_Form *view_Form;
  view_Form = new Tview_Form(Application);
  view_Form->Show(); //呼叫 view_Form 視窗
  //control_Form->Hide(); //隱藏
}
這樣就可以動態產生視窗 希望這樣的答案你可以滿意 by hdilwy 發表人 - hdilwy 於 2004/11/03 20:27:20
黑輪
中階會員


發表:135
回覆:188
積分:64
註冊:2004-01-29

發送簡訊給我
#8 引用回覆 回覆 發表時間:2004-11-03 21:58:25 IP:61.228.xxx.xxx 未訂閱
行~行~行~可是有個問題~就是當呼叫的視窗關掉後~cpu仍然是100%在跑~只有整個程式關掉cpu才正常~應該要如何才可使動態視窗關掉時,cpu就釋放資源呢? 很感謝各位朋友熱心的幫忙哦~
hdilwy
初階會員


發表:18
回覆:65
積分:41
註冊:2004-08-31

發送簡訊給我
#9 引用回覆 回覆 發表時間:2004-11-03 22:01:46 IP:219.68.xxx.xxx 未訂閱
你在viewForm::FormClose中做 Action=caFree; 抱歉~~這是你要離開那個Form的時候要做的 至於為什麼CPU還是100%的話就要看你程式的內容了~~ 發表人 - hdilwy 於 2004/11/03 22:07:05
黑輪
中階會員


發表:135
回覆:188
積分:64
註冊:2004-01-29

發送簡訊給我
#10 引用回覆 回覆 發表時間:2004-11-03 22:32:29 IP:61.228.xxx.xxx 未訂閱
hdilwy您好~請問Action=caFree;這個是作什麼的啊? 很感謝您的大力幫忙哦~
hdilwy
初階會員


發表:18
回覆:65
積分:41
註冊:2004-08-31

發送簡訊給我
#11 引用回覆 回覆 發表時間:2004-11-04 08:25:19 IP:219.68.xxx.xxx 未訂閱
那個是你ViewForm關掉的時候要做的事情~ 釋放記憶體資源~~
黑輪
中階會員


發表:135
回覆:188
積分:64
註冊:2004-01-29

發送簡訊給我
#12 引用回覆 回覆 發表時間:2004-11-04 22:54:31 IP:61.228.xxx.xxx 未訂閱
很感謝各位熱心的幫忙哦~
系統時間:2024-11-26 13:47:02
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!