>>951 「コールバックとか登録」って何?
あと <iostream.h> <fstream.h> は古いからやめなさい。
<iostream> <fstream>を使え。
WNDCLASSEXとか
LRESULT CALLBACK WndProc(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp)
とかです、よく考えるとあれはシステムに詠んで貰うためだから、
コンソールみたいな上から下に向かって順序良く進む場合はいらないんですか?
もし
#include <windows.h>
#include <iostream>
#include <fstream>
とした場合下のようなのが出て
error C2065: 'ifstream' : 定義されていない識別子です。c:\win32\win32\main.cpp 13
#include <windows.h>
#include <iostream>
#include <fstream.h>
とおくと
fstream.hは開けませんと出て
STLportで
#include <windows.h>
#include <iostream>
#include <fstream>
とおくと、下のように出て
error C2065: 'ifstream' : 定義されていない識別子です。c:\win32\win32\main.cpp
#include <windows.h>
#include <iostream>
#include <fstream.h>
とおくと、コンパイルできるんですorz設定を間違ってるのかな・・・
>>951 WinMainなプログラムでウィンドウを開かず、必要な処理だけしてすぐに終了しても構わんし、
逆にmainなプログラムでウィンドウを開いてもよい。
956 :
947:2006/08/18(金) 10:52:38
>>949 まぢですか。
とりあえず、GetMessageのブロッキングが解除されてほしいのですが…。
WM_QUERYENDSESSION後だとなにやってもメインループのGetMessageが制御を返してくれません…。
>>955 あ・・・・・・そういえばそんなのがありましたね、忘れてました。
958 :
947:2006/08/18(金) 11:20:30
あっ、ごめんなさい。
なんか勘違いしてたかも。
質問は無視しちゃってください。
959 :
950:2006/08/18(金) 11:44:34
No Integral HeightのプロパティがFALSEになってたよいつの間にか!
あほか!
タブコントロールのタブがある行の余白の部分だけ(AA参照)を、標準色とは違う色で
描画したい(最終目的は親ダイアログに貼られているビットマップを
透過しているように見せかける)。
┌────┐──────┐
│ タブ1 │ タブ2 │ここの余白の色を変えたい
│ └──────┴───────────┐
調べた限りでは、オーナードローをするしかないのかな?と思うんだけど、
オーナードローだと、タブの部分もちまちま描くのがマンドクセだし、さらに
XPのVisual Styleにも対応しなきゃいけないので、さらにマンドクセ('A`)('A`)
他に簡単にできる方法があれば教えてください。
マスク処理したグループボックスの上にでものせてお茶を濁すのが吉
>>961 早速作ってみたです。
バッチリです。これなら普通の人にはバレないくらいにちゃんとできてるです。
ありがとうございました。
やっぱPGに一番必要なのは、関数を覚えることよりもやわらかアタマだねぇ。
と毎度のことながら痛感させられました。
963 :
デフォルトの名無しさん:2006/08/18(金) 19:49:04
>>961, 962
目からうろこ。詳しくお願いします。
API でネットワーク接続の有効/無効を切り替える方法を調べているんですが、
どの API を使えば良いのでしょうか。
Vista であれば WMI を使って切り替えられるのは分かったのですが、2000/2003/XP
では WMI を使って切り替えることは出来ないようで。
>>965 どもです。
netsh の dump/exec を使ってみましたが、ネットワーク接続の有効/無効を
切り替えることは出来ないようです。
>>961-962 すまん、オレも知りたい。
WM_PAINT の時に子コントロールの画像をマスクするわけか?
というか、タブの形をどうやって知ったんだ?
ハンドルを返す関数が失敗してNULLを返した時は、
DleteObject() で開放しなくてもいいんですよね
最後のタブの隣に適当なコントロールを置いて、
そいつにDrawItemでタブの下に隠れた背景を描画するようにしたらどうだろう?
いずれにせよ
>>961-962の解答待ちw
複数のコンボボックスがあってある特定のコンボボックスの選択項目が
変更された時のみ更新をかけるっていう事やりたいんですけど単純に
if(HIWORD(wParam) == CBN_SELCHANGE)
処理;
とかでやるとすべてのコンボボックスが対象になってしまうと思うんですけど
これを回避するにはどうすればいいんでしょうか?
972 :
971:2006/08/19(土) 11:57:57
デバッグで見たところlParamが変わってたからそれどうにかすればいいのかな
973 :
971:2006/08/19(土) 12:02:32
lParamとコントロールのハンドル比較でできました。
if(HIWORD(wParam) == CBN_SELCHANGE && lParam == HWND)
処理;
ちなみにこの場合、HIWORDとLOWORDに分けなくていいんでしょうか?
975 :
971:2006/08/19(土) 12:53:55
>>ところでよくキャスト無しでLPARAM型とHWND型の値を比較できるな。
すいません(´・ω・`)
>>969 何も得られてないのに、何を解放しようというのだ。
例えば、デスクトップからごみ箱を開くと、
ファイル名を指定して個別にファイルを完全削除が行えますが、
GUI を使わずに、ごみ箱内のファイルリストを得たり、
ごみ箱ないのファイルに操作を行なうには、どうしたら良いのでしょうか?
SHEmptyRecycleBin と SHQueryRecycleBin では期待していることができなさそうです。
ルートにRECYCLERってSystem, Hiddenフォルダがあるから
そん中を思う存分漁るといい
979 :
977:2006/08/20(日) 05:30:16
ちゃんとやりたいならシェルネームスペース周りから攻めた方が良い
981 :
977:2006/08/20(日) 07:22:21
>>980 どうもです。
検索してみたんですが、使い方に関する情報が無いですね...
>>981 たしかに、シェル回りことで日本語の情報は少ないよ。
983 :
デフォルトの名無しさん:2006/08/20(日) 08:19:27
IShellFolder とか PIDL でググれば結構出てくる
ageちったゴメn
質問があるのですが
int _tmain(int argc, _TCHAR* argv[])
{
::MessageBox(NULL, "aaa", "bbb", MB_OK);
return 0;
}
このプログラムをビルドすると
error C2664: 'MessageBoxW' : cannot convert parameter 2 from 'const char [4]' to 'LPCWSTR'
というエラーが出るのですが、そんな事はどうでも良くて
埋め
確かに、そんなFAQどうでもいいわな。
UNICOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOODE
UNCODE
↑
VERY COOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOL!
うにこぉぉぉぉぉぉぉぉぉぉぉぉぉぉぉぉぉぉぉぉぉぉぉぉぉぉぉぉぉぉぉど
うにもぐ、て車あったね
うにっくす
梅子
梅方梅朗
996
オーナー描画ボタンにbmp貼り付けることは出来ますか?
出来ません
マジすか orz
な、なら何かのボタンにbmp貼り付けは…?
それも出来ないとしたら、ボタンぽいのを自分で書くしかないんですかね
1000
1001 :
1001:
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。