[表示 : 全て 最新50 1-99 101- 201- 301- 2chのread.cgiへ]
Update time : 05/09 22:12 / Filesize : 78 KB / Number-of Response : 392
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

[Tips]Borland C++Builder ちょいテク No.01



1 名前:1 mailto:sage [2006/08/03(木) 13:43:29 ]
今まで知らないでゴリゴリしこしこやっていた処理が実は簡単に出来たなんてことがよくあります。
そんなちょっとしたテクニックやTips(秘訣)を紹介するスレです。
プログラミングのQ&Aは
C++Builder相談室 Part16
pc8.2ch.net/test/read.cgi/tech/1138766165/
くだすれC++Builder(超初心者用)その2
pc8.2ch.net/test/read.cgi/tech/1144308804/
関連スレ
Borland Developer Studio 2006 No.07
pc8.2ch.net/test/read.cgi/tech/1154069526/
【Delphi】 Indyコンポーネント 【C++Builder】
pc8.2ch.net/test/read.cgi/tech/1093654251/


261 名前:253 mailto:sage [2008/09/09(火) 18:35:55 ]
>Assigned()

これは、関数ポインタが設定(=アサイン)されているか?
ということを確認する関数。

どういうことかっていうと、OnClickみたいなイベントハンドラって関数ポインタ型になってるじゃん?

で、IDEでイベントハンドラ設定すると、

OnClick := ButtonClick;

みたいなコードで関数ポインタが設定されるわけ。

でコンポーネント側は、
>if (Assigned(OnClick))
> OnClick(self, , ,)
みたいにイベントハンドラが設定されてたら関数ポインタを実行(=関数を実行)するわけ。

262 名前:253 mailto:sage [2008/09/09(火) 18:37:49 ]
ま、Assignedコールもできるでしょうし、意味的には、

>if (OnClick != NULL) {
> OnClick(self, , , );
>}

と等価です。

また、OnClickみたいな関数ポインタを使わず、
関数コール直接書いてもおk。

263 名前:253 mailto:sage [2008/09/09(火) 18:42:52 ]
>で、IDEでイベントハンドラ設定すると、
>Button1.OnClick := Button1Click;
>みたいなコードで関数ポインタが設定されるわけ。

の方が正確かな。

ま、上記のような、コンポーネントがイベントハンドラを実行する仕組みは理解した方が良いが、
どーしても理解できない場合は、Win23APIべた書きして下さい:



>ttp://www.m--takahashi.com/bbs/pastlog/03000/02950.html
// アイドリング処理 グローバル関数







[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](*・∀・)<78KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef