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

使用BCB6.0製作模擬鍵盤F4之功能Button

答題得分者是:syntax
flybook
一般會員


發表:2
回覆:2
積分:0
註冊:2009-10-14

發送簡訊給我
#1 引用回覆 回覆 發表時間:2009-10-14 16:26:38 IP:118.160.xxx.xxx 訂閱
想請問:
小弟是程式新手並想要用BCB6.0編寫一個BUTTON,程式執行按下去就等於按下鍵盤的F4鍵(程式按下BUTTON就等於是在WINDOWS桌面下按下F4一樣的結果)
小弟有先爬文已知很多方式可以編寫,但目前所編寫程式如下,且無法達到所提出的動作:
//---------------------------------------------------------------------------
#include
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
SendMessage(Handle,WM_KEYDOWN,VK_F4,0);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::btn1Click(TObject *Sender)
{
SendMessage(Handle,WM_KEYDOWN,VK_F4,0);
}
//---------------------------------------------------------------------------


請大家幫忙一下,告知小弟是我那裡沒有注意 謝謝!!
GGL
資深會員


發表:104
回覆:600
積分:335
註冊:2006-11-05

發送簡訊給我
#2 引用回覆 回覆 發表時間:2009-10-16 11:42:28 IP:220.128.xxx.xxx 未訂閱
我想你的程式只是對你自己的視窗傳送F4,而不是對你系統的其他程式

所以你才會覺得怎麼這個快速鍵沒作用

===================引 用 flybook 文 章===================
想請問:
小弟是程式新手並想要用BCB6.0編寫一個BUTTON,程式執行按下去就等於按下鍵盤的F4鍵(程式按下BUTTON就等於是在WINDOWS桌面下按下F4一樣的結果)
小弟有先爬文已知很多方式可以編寫,但目前所編寫程式如下,且無法達到所提出的動作:
//---------------------------------------------------------------------------
#include
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
SendMessage(Handle,WM_KEYDOWN,VK_F4,0);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::btn1Click(TObject *Sender)
{
SendMessage(Handle,WM_KEYDOWN,VK_F4,0);
}
//---------------------------------------------------------------------------


請大家幫忙一下,告知小弟是我那裡沒有注意 謝謝!!
flybook
一般會員


發表:2
回覆:2
積分:0
註冊:2009-10-14

發送簡訊給我
#3 引用回覆 回覆 發表時間:2009-10-19 10:51:39 IP:118.169.xxx.xxx 訂閱
我想寫這程式用意是在,因原先在桌面上按下鍵盤F4鍵可以開啟某個小程式,而那程式非我自行編寫的且無原始碼,僅知道操作方式要按下鍵盤F4鍵,且目前因環境無法放置鍵盤但螢幕為觸控式,所以才想寫個程式模擬此功能 那我要如何修改呢?才能模擬在桌面上按F4鍵呢?
syntax
尊榮會員


發表:26
回覆:1139
積分:1258
註冊:2002-04-23

發送簡訊給我
#4 引用回覆 回覆 發表時間:2009-10-21 16:06:13 IP:59.125.xxx.xxx 訂閱
SendMessage(Handle,WM_KEYDOWN,VK_F4,0);

Handle 改傳 DeskTop 的 Handle ,請Google "win api get desktop handle"

就會變成對 Desktop 下 F4 按下的指令

===================引 用 flybook 文 章===================
我想寫這程式用意是在,因原先在桌面上按下鍵盤F4鍵可以開啟某個小程式,而那程式非我自行編寫的且無原始碼,僅知道操作方式要按下鍵盤F4鍵,且目前因環境無法放置鍵盤但螢幕為觸控式,所以才想寫個程式模擬此功能 那我要如何修改呢?才能模擬在桌面上按F4鍵呢?
flybook
一般會員


發表:2
回覆:2
積分:0
註冊:2009-10-14

發送簡訊給我
#5 引用回覆 回覆 發表時間:2009-10-27 15:51:45 IP:118.169.xxx.xxx 訂閱
很感謝你的回覆,雖然小弟還是google不到所對應的handle
不過至少讓小弟知道了方向 謝謝
系統時間:2017-10-20 5:45:54
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!