« 2005年2月 | トップページ | 2005年4月 »

2005年3月31日 (木)

BCB6でコントロールのフォーカス移動を無効にする。

BCB6のVCLはコントロールのフォーカス移動を複雑なキーイベント処理によってエミュレートしています。
WindowsのIsDialogMessageを直接使っているわけではないようです。
(Ref:http://www.asahi-net.or.jp/~HA3T-NKMR/vcl3-3.htm)

そのBCB6で矢印キーでのフォーカス移動をやめたい場合は、CM_DIALOGKEYというメッセージを横取りすることでうまくいきます。


class	TForm1 : public TForm
{
	//	:
protected:
	void __fastcall OnDialogKey(Messages::TWMKey &Message)
	{
		if( Message.CharCode != VK_LEFT )
			TForm::Dispatch( &Message );
	}
	BEGIN_MESSAGE_MAP
		MESSAGE_HANDLER( CM_DIALOGKEY, Messages::TWMKey, OnDialogKey );
	END_MESSAGE_MAP(TForm)
};
上のような感じです。他の無効にしたいキーも同じく記述します。

| | コメント (0)

2005年3月24日 (木)

BCB6でboost1_32_0でvaridate_generatorあたりでコンパイルエラー

BCB6のパッチバージョン4を当てると解消されることがある。

| | コメント (0) | トラックバック (0)

2005年3月11日 (金)

漢字変換(MS-IME)Tips(F10で半角に変換)

漢字変換起動中に起動していないつもりで入力し、F10を押すと半角、つまり漢字変換が起動していない状態で同じキー入力をした状態に変換されます。例えば、

"m。たまき’s"と入力してF10を押せば"m.tamaki's"となります。
また、MS-IMEでの話ですが、漢字変換起動中、未確定文字列の中に半角スペースを入れたいときはCtrl+Spaceを押します。
また、漢字変換起動中、全角かな漢字を入力していてShift+アルファベットを入力すると勝手に半角英数字モードに切り替わる経験を持つ人は多いと思います。
例えば
"このサイトのLibraryの"
と入力するとき、"このサイトのLibrary"までは違和感なく入力できますが、"の"が"no"となってしまいます。

この半角英数字モードはShift空打ちで全角かな漢字モードに戻せます。
つまり、"このサイトのLibrary"まで入力したらShiftを一回押します。その後"の"と書けばちゃんと全角で"の"となります。

| | コメント (0) | トラックバック (0)

Sleipnir::検索結果にハイライトを行う。

Sleipnirオプション→検索→検索結果にハイライトを行う

で検索後どのページもグーグルキャッシュ状態(キーワードが強調表示)になります。
最近の更新で追加されたオプションですが、デフォルトでオンになっていないバージョンがあり、
結構気づいてなかったりするようです。

| | コメント (0)

2005年3月 6日 (日)

ES_READONLYのEDITコントロールの背景色

WM_CTLCOLORSTATICの戻り値でハンドルを返すだけだと、本当に背景色のみ変更。
どうやらWM_CTLCOLORSTATICのWPARAMのHDCを使ってテキストの背景色も設定してやるときちんと全体の背景色を設定できるようだ。

| | コメント (0) | トラックバック (0)

2005年3月 5日 (土)

Boost.Lambdaとプリコンパイル

VC7.1でもBoost.Lambdaはプリコンパイルできない。
どうやらヘッダ内にてグローバル変数が使われているようだ。

| | コメント (0) | トラックバック (0)

« 2005年2月 | トップページ | 2005年4月 »