如何使用OnIdle事件 (C++ Builder)

来源(怡园)

From: http://yynets.best.163.com/cbuilder.htm

如何使用OnIdle事件 (C++ Builder)

使用OnIdle事件随时监视剪贴板内容以改变弹出菜单的可执行项。

在Form1的.h的private加上:
void __fastcall OnIdle(TObject* Sender,bool& Done);

在Form1的.cpp内加上:
void __fastcall TForm1::OnIdle(TObject* Sender,bool& Done) {
    bool TextSelected=DBRichEdit1->SelLength>0;
    N17->Enabled=TextSelected;  //剪切,复制,清除
    N18->Enabled=TextSelected;
    N20->Enabled=TextSelected;
    bool CBHasText=Clipboard()->HasFormat(CF_TEXT);// 需加入#include<Clipbrd.h>
    N19->Enabled=CBHasText;     //粘贴
    bool HasText=RichEdit1->Lines->Count>0;
    N21->Enabled=HasText;       //全选
    bool HasChanged=RichEdit1->Modified;
    ToolButton2->Enabled=HasChanged;
    ToolButton4->Enabled=HasChanged;
}


在Form1的OnCreate内加上:
Application->OnIdle=OnIdle;

Link: http://www.asm32.net/article_details.aspx?id=1910


浏览次数 367 发布时间 2006-08-25 07:21:28 从属分类 C/C++ 【评论】【 】【打印】【关闭
 
| www.asm32.net | 2006版 | 资料中心 | linux | asm/asm32 | C/C++ | VC++ | java | Python | 书签 | ASP.Net书签 | 京ICP备09029108号-1