GetBuffer()をしてリリースしないとか、
char*に強引にキャストするとか、ヤバい奴がけっこういるな。
916 :
デフォルトの名無しさん:02/01/21 15:36
>>914GetBufferをすると、
インスタンス内のポインタが同じバッファを指していると、
コピーされるみたいですね。
とりあえず、CString::operator LPCTSTR() と、CString::GetBuffer() を見る。
↑あ、ソースのことね。m_pchData は LPTSTR型だね。
>910は LPTSTR と言いたかったんだろ。
そんなキャストするよりはコピーして渡した方がいいというのには同意。
920 :
デフォルトの名無しさん:02/01/21 16:38
リストビューを詳細表示したときにヘッダーをダブルクリックすると
カラムの幅を自動調節してくれますが、
これをコードから行うにはどうしたら良いですか?
ふつー、
CString cstr = "hogehoge";
char *str = _strdup( (LPCSTR)cstr );
...
free(str);
>920
LVM_SETCOLUMNWIDTH で LVSCW_AUTOSIZE。
>>922できました!どうもありがとうございます。
924 :
デフォルトの名無しさん:02/01/21 17:35
質問です。CFileDialogでファイルを選択するときに、前回の設定
(詳細、一覧、大きなダイアログ)などを記憶させる方法を教えてください。
詳細の場合はソートの方法も復旧させたいのですが、方法がわかりません。
>924
シリアライズしる!
926 :
演算(比較)速度:02/01/21 18:45
boolと BOOLって、やっぱ BOOLの方が速い?
なんでBOOLのほうがはやいの?
x86のワード長の関係?
っていうか、実際試してみりゃいいんじゃん。
BOOL a;
for(int i=0; i<100000000; ++i) a = TRUE;
と
bool a;
for(int i=0; i<100000000; ++i) a = true;
を比較したら、boolの方が、平均で 150msぐらい速かった(゜ε ゜ なんと。
基本的になんでもプログラムって大概小文字のほうが速い。
BOOL a = TRUE;
int b;
for(int i=0; i<100000000; ++i) if(a) b=1;
とやったら、今度は BOOLの方が平均 200msは速かった。
代入は bool、比較は BOOLの方が速い?
>>931そんなん代入はBOOLの方が3バイト分(VC++6とかでは)でかいんだからあたりまえやん
比較は
>>928の言うとおり。
>>929,931
volatile無くてダイジョブか?
boolって!0な値を代入するとぜんぶ1に変換されるんだな・・・
今まで知らんかった・・・
>volatile無くてダイジョブか?
デバッグビルドだったので、ダイジョブ(だよね?)
このスレを使い倒そうぜ!!
eMbedded VC何ですが、ブレークポイントを置いても実行時に
one or more breakpoint cannot be set.みたいなエラーが出て、
白ブレークポイントにされてしまいます。
クリーンとかしてみたけど改善しません。
なにが原因なんでしょか?
ガーン、ブレークポイントを置きたかったクラスをまだ使ってなかった ;(
間抜けでした。
>925
返答どうもです。CFileDialogにはSerialize()が実装していないので、
出来ないみたいなんですが・・。
>>876 MSにTELしたら、20011231に期限が切れたクーポン券が同封されたパッケージを
購入した人は一月中に登録すればOK。だと。
941 :
デフォルトの名無しさん:02/01/23 00:30
CMenuExtension::QueryContextMenu なんですけど、
return で返す値が今一つよく分かりません。
#define ID_MENU0 0
#define ID_MENU1 1
#define ID_MENU2 2
STDMETHODIMP CShellExtension::QueryContextMenu(HMENU hMenu, UINT indexMenu, UINT idCmdFirst, UINT idCmdLast, UINT uFlags)
{
...
InsertMenu(hMenu, 0, MF_STRING | MF_BYPOSITION, idCmdFirst + ID_MENU0, "mめにゅ0");
InsertMenu(hMenu, 0, MF_STRING | MF_BYPOSITION, idCmdFirst + ID_MENU1, "mめにゅ1");
InsertMenu(hMenu, 0, MF_STRING | MF_BYPOSITION, idCmdFirst + ID_MENU2, "mめにゅ2");
とした場合、
return MAKE_HRESULT(SEVERITY_SUCCESS, 0, USHORT(ID_MENU2 - ID_MENU0 + 1));
で良いの? どうも自信がなくて。
↑ あ、IContextMenu::QueryContextMenu です。
944 :
デフォルトの名無しさん:02/01/27 03:29
質問させて頂きます。COLORREF型のRGBマクロの値を判定するにはどうすれば
よいのでしょうか。私が参考にしている本には、
COLORREF color;
if(GetBValue(color) == 0 && GetBValue(color) == 0
&& GetBValue(color) == 0)
となっていて、白と黒は判定できるのですが、それ以外は反応無しなのです。
どうすればよいでしょうか?
あのー、ちょっといいですか?あー・・・、でも無視されそう・・・でも質問します!
ダイアログに貼り付けたリストボックスで、アイテムが選択されたときに送られるメッセージは何ですか?spy++で調べてもたくさんですぎてわかりませんでした。
あと、選択されているアイテムが変わったときに送られてくるメッセージも教えてくださ〜い(>А<)
LBN_SELCHANGE。
>946
あっ、やったぁできましたぁ!ありがとうございます〜☆(^Э^)ヾチュッ
つぎからきちんとMSDNで探そうな。あ、それと、マトモな情報は
やっぱし英語のヤツしかなかったりするから。
>>948 ム板マ板にいるプログラマ全員でかかれば、MSDNライブラリの
英文を全部和訳出来そうな気がする、と言ってみるテスト。
そんなことが出来る暇なプログラマはDQNばっかりだよ、
と返ってきそうな採点結果。
>>949 そんなことが出来る暇なプログラマはDQNばっかりだよ
ローボコン100点
> 私はMFCを使わない(使えない)ので、ちょっとショックです。
猫に訊くとか、ATL/WTLのソース読むとか、MFCのソース読むとか、
方法は幾らでもあるだろうに。
このスレをageた時点でもう……逝っていい
それよりもなぜコテハンにする必要があるのだろうか。
「クソスレ・クソレス、コテハンの法則」
があるから、それに従ったんだろう。
どーでもいい事をコテハンで書き込む連中には激しく萎え。
本当はおまえらわからないんだろ!(藁)
あ〜あ期待した折れが馬鹿だったよ。
じゃーなー
>>956 質問は新スレでしろよ。
それに煽るな。
サンプルがMSDNの中にある。
InitListViewImageLists でクエリーかけてみろ。listview.cが見つかる。
ただ、個人的にはListViewのサブ項目の編集は使いにくいので
別の方法を模索するのを勧めるけどな。
>>958 間違ってこっちに質問が来ないように、埋め立てカキコを
しちゃあかんのだろうか?
と、聞いているフリをして埋め立てをちょっと行ってみる。
すいません。
VCを勉強しているのですが。
よく分かりません。
単なる、ダイアログベースで作成して、
プロパティーページを出そうとしているのですが、
デバックで一度動いて、二度目で落ちてしまいます。
クラスは、CPropertyPageとCPropertySheetを使っています。
使用しているのは、VALUESTAR VL700R/5のマシン、
OS WINDOWS MEです。
ひとつ分かっているのは、一度、ツールバーのプロパティーを
動かしたら、デバックで死ぬことは、ありません。
VC6、サービスパック5をインストールしています。
よろしくお願いします。
Visual C++ 6.0にバグがあると思うのですがみなさんはどう思います?
??=include <stdio.h>
??=if 1
main()??<printf("Hello??/n");??>
??=endif
がコンパイルできないんです。
??=include <stdio.h>
??=if 1
main()??<printf("Hello??/n");??>
#endif
だとコンパイルできるですけれど・・・・・
みなさんはどう思います?
ちなみに??ばっかりですけれど文字化けではありません。
秀丸のメニュー右には行桁が表示されていますが
同じようなことをするにはどうすればいいでしょうか。
>>963 現在のテキストカーソル位置の取得なら
MAGURO ONLINE にサンプルコードがあったと思ったが…?
(実際、中身見たことないで 確認してくれ
>>963 よ )