網站公告 :


Delphi K.Top討論區 » 會員作品發表區(限本人創作發表) » 取得視窗列表 + 視窗內所有子視窗元件列表(分層顯示)+ 顯示 / 隱藏 / 改文字
發表新文章
 
主題:取得視窗列表 + 視窗內所有子視窗元件列表(分層顯示)+ 顯示 / 隱藏 / 改文字
瀏覽次數:3943
dllee
站務副站長




發表:315
回覆:2470
積分:1695
註冊:2002-04-15

發送簡訊給我
#1 發表時間:2003-05-20 12:41:31 IP:61.231.xxx.xxx 未訂閱

原作:timhuang
□ 【Delphi】【發表】取出視窗下物件並操作顯示隱藏及列出內容
http://delphi.ktop.com.tw/topic.php?TOPIC_ID=30620

我沒有 100% 由 Delphi 改成 BCB,因為... Delphi 我不會
修改其中對於 ComboBox/ListBox 的判斷,由 TComboBox/TListBox 改為 ComboBox/ListBox,如此,對於一般不是用 Delphi/BCB 的應用程式也可以看到內容,或是對於 Delphi/BCB 的應用程式,如果是自定的如 TMyComboBox 或 TMyListBox 之類的也可以看到內容。



看到修改文字的功能,讓我連想到「線上多國語言」的軟體應該就是這樣作的吧!

我有一些疑問... 在 Message 中是否有類別判斷的 messageID 呢,否則,我只要將 ListBox 類別的元件故意另外做一個並取 graphics 之類的名稱,那這類的程式不就無法判讀了嗎? 另外,像 TLabel 之類的要如何取得/修改呢?
如果您有解答,請至
□【問題】判斷視窗類別並取得其文字
http://delphi.ktop.com.tw/topic.php?TOPIC_ID=30792
回應,方便給分 Delphi/BCB 皆可。


沒空更新的網頁...
http://dllee.ktop.com.tw C及指標教學,計算機概論,資訊管理導論... [url]http://dllee.adsldns.org[/url] 介紹Shells,LiteStep,GeoShell....


發表人 - dllee 於 2003/05/21 11:01:16
------
http://blog.yam.com/dllee/

附加檔案:30743_GetWinAndSubWin2.zip

dllee
站務副站長




發表:315
回覆:2470
積分:1695
註冊:2002-04-15

發送簡訊給我
#2 發表時間:2003-05-20 12:46:42 IP:61.231.xxx.xxx 未訂閱

另外在此範例中,我用了一些小技巧:
1. 利用 TStrings 的 Objects 來存放 handle
2. 利用 TMemo 的 SelStart 及 SelLength 將指定的內容移到 TMemo 的第一行

提供新手參考。


沒空更新的網頁...
http://dllee.ktop.com.tw C及指標教學,計算機概論,資訊管理導論... [url]http://dllee.adsldns.org[/url] 介紹Shells,LiteStep,GeoShell....

------
http://blog.yam.com/dllee/

timhuang
尊榮會員




發表:78
回覆:1815
積分:1588
註冊:2002-07-15

發送簡訊給我
#3 發表時間:2003-05-21 00:53:08 IP:61.221.xxx.xxx 未訂閱

感謝 dllee 兄的增強功能.... 感覺功能也更完整了...
大家一起來幫忙, 把這個程式寫得更多功能, 更方便, 以後就有一個實用的小小工具了



GaryKao99
中階會員




發表:46
回覆:102
積分:54
註冊:2002-08-23

發送簡訊給我
#4 發表時間:2003-05-21 09:28:39 IP:210.201.xxx.xxx 未訂閱

go go go 好累 好累 好累



dllee
站務副站長




發表:315
回覆:2470
積分:1695
註冊:2002-04-15

發送簡訊給我
#5 發表時間:2003-05-25 09:24:37 IP:203.204.xxx.xxx 未訂閱

不知道大家有沒有試過,這個小程式對於部分問密碼的視窗,也可以取得 *** 的真正內容喔

不過,不是每個都行... 因為有愈來愈多人知道這樣簡單的方法就可以取得真正的密碼,所以,已經有許多 VCL 元件或自己設計的 Edit 元件,可以不讓 WM_GETTEXT 取得內容,有需要自行上網找一找吧


沒空更新的網頁...
http://dllee.ktop.com.tw C及指標教學,計算機概論,資訊管理導論... [url]http://dllee.adsldns.org[/url] 介紹Shells,LiteStep,GeoShell....

------
http://blog.yam.com/dllee/

dllee
站務副站長




發表:315
回覆:2470
積分:1695
註冊:2002-04-15

發送簡訊給我
#6 發表時間:2003-07-30 23:46:14 IP:61.224.xxx.xxx 未訂閱

引言:

不知道大家有沒有試過,這個小程式對於部分問密碼的視窗,也可以取得 *** 的真正內容喔

不過,不是每個都行... 因為有愈來愈多人知道這樣簡單的方法就可以取得真正的密碼,所以,已經有許多 VCL 元件或自己設計的 Edit 元件,可以不讓 WM_GETTEXT 取得內容,有需要自行上網找一找吧


axsoft 版主在本討論區已有推薦過(paf 會員提問時提到的)
■[推薦] 非法探取密碼的原理及其防範
http://delphi.ktop.com.tw/topic.php?topic_id=19935


沒空更新的網頁...
http://dllee.ktop.com.tw C及指標教學,計算機概論,資訊管理導論... [url]http://dllee.adsldns.org[/url] 介紹Shells,LiteStep,GeoShell....

------
http://blog.yam.com/dllee/

kkccgg
初階會員




發表:45
回覆:49
積分:28
註冊:2002-07-28

發送簡訊給我
#7 發表時間:2003-12-25 01:08:58 IP:203.204.xxx.xxx 未訂閱

請問:
要修改ComboBox內容如何做?
比如ComboBox中有1,2,3目前在1我想把它移到3
請問如何處理

謝謝


dllee
站務副站長




發表:315
回覆:2470
積分:1695
註冊:2002-04-15

發送簡訊給我
#8 發表時間:2003-12-25 19:55:40 IP:211.76.xxx.xxx 未訂閱

引言:

請問:
要修改ComboBox內容如何做?
比如ComboBox中有1,2,3目前在1我想把它移到3
請問如何處理

謝謝


參考:CB_SETITEMDATA Message 可以改 ComboBox Item 內容
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/shellcc/platform/commctls/comboboxes/comboboxreference/comboboxmessages/cb_getlbtext.asp
或使用其他的 Message
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/shellcc/platform/commctls/comboboxes/comboboxes.asp


沒空更新的網頁...
http://dllee.ktop.com.tw C及指標教學,計算機概論,資訊管理導論... [url]http://dllee.adsldns.org[/url] 介紹Shells,LiteStep,GeoShell....

------
http://blog.yam.com/dllee/

kkccgg
初階會員




發表:45
回覆:49
積分:28
註冊:2002-07-28

發送簡訊給我
#9 發表時間:2004-01-11 00:59:53 IP:203.204.xxx.xxx 未訂閱

請問:
若是要測Button的Enabled是True or False請問如何處理?

謝謝






dllee
站務副站長




發表:315
回覆:2470
積分:1695
註冊:2002-04-15

發送簡訊給我
#10 發表時間:2004-01-15 07:23:13 IP:211.76.xxx.xxx 未訂閱

引言:

請問:
若是要測Button的Enabled是True or False請問如何處理?

謝謝


判斷視窗(Button 是視窗的一種)是否 Enable 可用: IsWindowEnabled()
[url]http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/WinUI/WindowsUserInterface/UserInput/KeyboardInput/KeyboardInputReference/KeyboardInputFunctions/IsWindowEnabled.asp[/url]
判斷視窗是否 Visible 可用: IsWindowVisible()
[url]http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/WinUI/WindowsUserInterface/Windowing/Windows/WindowReference/WindowFunctions/IsWindowVisible.asp[/url]
要設定視窗 Enable 的狀態可用: EnableWindow()
[url]http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/WinUI/WindowsUserInterface/UserInput/KeyboardInput/KeyboardInputReference/KeyboardInputFunctions/EnableWindow.asp[/url]

想了解每種視窗可以操作的各種訊息及事件,請參考 Windows Controls
[url]http://msdn.microsoft.com/library/default.asp?url=/library/en-us/shellcc/platform/commctls/wincontrols.asp[/url]


沒空更新的網頁...
http://dllee.ktop.com.tw C及指標教學,計算機概論,資訊管理導論... [url]http://dllee.adsldns.org[/url] 介紹Shells,LiteStep,GeoShell....

------
http://blog.yam.com/dllee/

G01
高階會員




發表:233
回覆:352
積分:207
註冊:2002-05-21

發送簡訊給我
#11 發表時間:2004-01-15 13:19:00 IP:210.200.xxx.xxx 未訂閱

各位好!! 關於程式碼中的類別判斷問題
// 處理個別內容
// 問題? 難道沒有類別判斷的 Message 嗎? 如果 ClassName 故意亂取名 字...

以下為小弟小小的建議,請參考

1.宣告一個無型態的指標,假設為OBJptr
2.宣告一個TComponent型態的指標tmpVCL
3.將HWND轉型為指標,並且讓OBJptr指向該位址
4.再將OBJPtr指標轉型為TComponent指標,再讓tmpVCL指向該位址
這樣一來,就可以由tmpVCL->ClassType來判斷該控制項的ClassType了!!





dllee
站務副站長




發表:315
回覆:2470
積分:1695
註冊:2002-04-15

發送簡訊給我
#12 發表時間:2004-01-16 18:51:00 IP:211.76.xxx.xxx 未訂閱

To G01,

感謝您轉成 Delphi
不過.... 不必把我的名字打上 Title 啦
如果真的要打,也應該打上原 Delphi 的作者 timhuang 的大名

另外,關於 ClassName 我指的是非 VCL 的程式...
引言:

我比較想知道在 Windows API 中,到底提供了多少基本物件及存取這些基本物件的方法,這樣對別人的應用程式,不論是否是用 Delphi/BCB 寫的,都可以存取其內容。
如果已知是 Delphi/BCB 寫的,可以使用 Delphi Application Peeper http://www.devrace.com


可以參考
□【問題】判斷視窗類別並取得其文字
http://delphi.ktop.com.tw/topic.php?TOPIC_ID=30792
的討論。


沒空更新的網頁...
http://dllee.ktop.com.tw C及指標教學,計算機概論,資訊管理導論... [url]http://dllee.adsldns.org[/url] 介紹Shells,LiteStep,GeoShell....

------
http://blog.yam.com/dllee/

G01
高階會員




發表:233
回覆:352
積分:207
註冊:2002-05-21

發送簡訊給我
#13 發表時間:2004-01-17 06:05:00 IP:61.64.xxx.xxx 未訂閱

Hellow!! dllee大大:
    >>>感謝您轉成 Delphi
    不用客氣啦!!好的作品就要想辦法讓更多的人能分享呀!!
    我只是藉花獻佛罷了!!尤其是這樣的程式有許多關於WinApi的使用
    對於Delphi的User來說,是很難得的經驗呢!!
    
    關於非VCL控制項的問題,不知道去參考MFC會比較好呢(因為大部分的工具
    都是使用Visual C++ (MFC Library)寫的!!



kkccgg
初階會員




發表:45
回覆:49
積分:28
註冊:2002-07-28

發送簡訊給我
#14 發表時間:2004-03-29 11:52:01 IP:202.145.xxx.xxx 未訂閱

請問:
ChangeTo 功能之字串如何處理
a.Edit1->Text=Form1->Memo3->Lines->Strings[1];
b.Edit1->Text="1";
若我要將memo字串讀進來,然後post到指定Edit中時,
用語法b可正常,但語法a會post空的字串,請問如何轉換a才能順利執行

謝謝



系統時間:2010-09-03 19:08:42,  線上使用者 259 / Max 3,401,主題數:92,416,回覆數:208,133。  聯絡我們 | Delphi.ktop討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!

趴趴狗旅遊網大花蓮旅遊網大花蓮民宿網花蓮市旅遊網花蓮市民宿網大南投旅遊網大南投民宿網
日月潭風景區日月潭旅遊網日月潭民宿網台東旅遊網台東民宿網集集旅遊網集集民宿網
關子嶺旅遊網關子嶺民宿網白河旅遊網白河民宿網
. . . . . . . .