■過去ログ置き場に戻る■
1-
前250
次250
最新50
[memo]
"9999999999_00.html#R20"
という感じで、URLの最後に "#R
レスNo
" を追加すると幸せになれます。
Win32API質問箱 Build32
251
名前:
249
:2005/06/06(月) 13:40:41
>>250
ありがとう!的中しました。
いや〜ChoseFontは知ってたんだが、
Colorバージョンもあったなんて
目から鱗のクラッカー
愛してるよ
252
名前:
デフォルトの名無しさん
:2005/06/06(月) 14:48:30
>>248
2000 で起きなくて XP で送るなら、漏れなら manifest を疑う。
253
名前:
デフォルトの名無しさん
:2005/06/06(月) 16:46:24
VC++6.0 を携えて出てくる初心者が後を絶たないんだが、
どうして新参者が6.0を持ってるんだろう?
それも決まって6.0だ。5.0じゃない。
どうなっているのか?
254
名前:
デフォルトの名無しさん
:2005/06/06(月) 16:49:43
.NETを購入していない大学or会社でピコったに100ガバス
255
名前:
デフォルトの名無しさん
:2005/06/06(月) 17:03:46
新参者がVS6.0持ってちゃあかんのか?
256
名前:
デフォルトの名無しさん
:2005/06/06(月) 17:12:16
確かに253の疑問はもっともだが、どうせ割れなら最新のを使わない手はない気もするしなぁ。
俺もそろそろIDE買い換えたいなぁ…。最近のは関数毎にテキストを畳めるらしいな…。
257
名前:
デフォルトの名無しさん
:2005/06/06(月) 17:19:33
VC7以降のIDEは、常時使用するにはモッサリしすぎな気がするが。
デバッガは我慢して使ってるが、
それ以外はコマンドライン+makefileに逆戻りしたよおかげさまで。
258
名前:
デフォルトの名無しさん
:2005/06/06(月) 17:23:43
>>253
2003に移行した人から貰ったんじゃないの?
259
名前:
デフォルトの名無しさん
:2005/06/06(月) 17:25:05
>>255
新参者なら最近開発環境購入したはずなのだからVC++6.0であるはずがない、
ということでしょ。
>>257
確かにVC++6.0やVB6.0あたりとは軽さが圧倒的に違うね。
でも、インテリセンスつきのエディタとデバッガはやはり欲しいから、IDEから離れられない。
260
名前:
デフォルトの名無しさん
:2005/06/06(月) 17:44:02
>>257
( ・∀・)人(・∀・ )ナカーマ
261
名前:
デフォルトの名無しさん
:2005/06/06(月) 17:44:29
上げてしまった...orzスマソ
262
名前:
デフォルトの名無しさん
:2005/06/06(月) 17:44:29
>>259
プログラマとして新参者でも、最近開発環境購入したとは限らんだろう
263
名前:
デフォルトの名無しさん
:2005/06/06(月) 18:04:44
貧乏会社に就職したばかりの新人プログラマとかなー
264
名前:
デフォルトの名無しさん
:2005/06/06(月) 18:15:01
こんばんわ
質問ですが
リストビュー(リストコントロール)に挿入されてるカラムの数を取得したいのですが、
そのAPIを教えていただけないでしょうか。
アイテムを取得するAPIはわかったのですが、どうしてもカラムの数がわかりません。
265
名前:
デフォルトの名無しさん
:2005/06/06(月) 18:47:29
GDIの座標の変換のところで
三角関数とか行列とかでてきた。
図形の回転。。。XFORM構造体。。。
やはりこれは高校の教科書なの、だろう。
266
名前:
239
:2005/06/06(月) 19:14:50
>>252
manifestって、XPスタイルにするための.manifestファイルのことでいいんですよね?
とりあえず、次の2つを試してみました。
・設定をクラシックスタイルに変更して実行
・.exeファイルのリソースにmanifestを埋め込んで実行
やっぱりどちらもスレッド作成時にFDをアクセスしに行きます…もうだめぽ
267
名前:
デフォルトの名無しさん
:2005/06/06(月) 19:26:11
>>264
ヘッダーコントロールに対して HDM_GETITEMCOUNT とか Header_GetItemCount() とか
268
名前:
デフォルトの名無しさん
:2005/06/06(月) 20:56:47
>>248
一時的にハードディスクにコピーして実行するのが簡単だと思うよ
269
名前:
239
:2005/06/06(月) 22:20:26
>>268
そうですね…確かに現時点ではそれが最も手っ取り早い解決方法かもしれません。
まあ、そもそもいまどきFDから起動するという状況自体がレアケースなので、
無視してもどうということはないのですが…あまり気持ちのいいものではないですよね。
270
名前:
デフォルトの名無しさん
:2005/06/06(月) 22:44:57
漏れはVS.NET 2002を買ってMSDNで送られてきたVC6を愛用してるよ。
大したことをやっていない、というのもあるけどね。
ちなみに会社では今だにVC4.2
271
名前:
デフォルトの名無しさん
:2005/06/06(月) 23:12:05
ダイアログボックスを使用したプログラムを組んだんですがウィンドウとは
別でダイアログでもうひとるウィンドウみたいなのができますよね。
これをウィンドウとあわせたりできますか?
272
名前:
デフォルトの名無しさん
:2005/06/06(月) 23:16:58
うひとるウィンドウ
ってなんだ?
273
名前:
デフォルトの名無しさん
:2005/06/06(月) 23:19:53
RegOpenKeyExでKEY_ALL_ACCESSで開いているのに
RegEnumValueでキー名がFilterClassesとか出て値が得られないんだけど、
これらを得る方法はありますか?
例えば
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Network
以下にあるキーとか。
274
名前:
デフォルトの名無しさん
:2005/06/06(月) 23:25:09
#include <windows.h>
/* 島津印のマーカーを、出す */
void Marker(LONG x, LONG y, HWND hwnd)
{
HDChdc;
hdc = GetDC(hwnd);
MoveToEx(hdc, (int)x - 10, (int)y, (LPPOINT)NULL);
LineTo(hdc, (int)x + 10, (int)y, (LPPOINT)NULL);
MoveToEx(hdc, (int)x, (int)y - 10, (LPPOINT)NULL);
LineTo(hdc, (int)x, (int)y + 10, (LPPOINT)NULL);
ReleaseDC(hwnd, hdc);
}
LRESULT CALLBACK MainWndProc(HWND hwnd,
UINT messge,
WPARAM wParam,
LPARAM lParam)
{
/* FIXME: もうねる */
275
名前:
デフォルトの名無しさん
:2005/06/06(月) 23:42:48
>>270
漏れは古いソースをコンパイルするときはそのとき使っていたものをずっと使ってる
新しいのでコンパイルし直すだけで古い環境では動作しなくなるらしいから
276
名前:
デフォルトの名無しさん
:2005/06/06(月) 23:49:16
>>273
>HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Network
>以下にあるキーとか。
サブキーを列挙したいのなら RegEnumKeyEx な。
RegEnumValue はエントリ(値)の列挙。
277
名前:
デフォルトの名無しさん
:2005/06/07(火) 00:50:04
>>273
方法を問わなければ、WSHで列挙してテキストファイルに写すってのはどうよ?
たしか、WSHなら制限無く値を得れるはず。(RegEnumValueで制限あるなんて知らなかったが)
指定の値を取れる記述をしたvbsをShellExecuteで呼び出してとかね。
>>276
値が得られないって言ってるんだから、RegEnumValueでいいだろう。
以下のキーの値が得られないって言ってるんだと思う
278
名前:
デフォルトの名無しさん
:2005/06/07(火) 02:28:19
WindowsXPやWindows2000でパスを追加したいのですが、環境変数を操作する方法を教えてください。
279
名前:
デフォルトの名無しさん
:2005/06/07(火) 02:51:00
>>278
Get/SetEnvironmentVariable APIがあるけどシステム環境変数は無理っぽいから
レジストリを操作するしかないとおもふ
280
名前:
デフォルトの名無しさん
:2005/06/07(火) 12:10:05
GetAsyncKeyState()の引数にVK_Aと書いたら
'VK_A' : 定義されていない識別子です。
というエラーになってしまいます。
VK_LEFTやVK_UPなどは大丈夫です。
何故でしょうか?
281
名前:
デフォルトの名無しさん
:2005/06/07(火) 12:13:42
定義されていないからだよ。
282
名前:
280
:2005/06/07(火) 12:33:05
でも仮想キーコードの表などにはVK_Aが載ってるから使えると思ったんですけど、
どうしたら使えるようになるんでしょうか?
283
名前:
デフォルトの名無しさん
:2005/06/07(火) 12:39:34
>>282
どうしても、その記述が使いたければ自分で定義するしかないんじゃない?
漏れのwinuser.hにはコメントで↓のように書いてあるし
VK_0 - VK_9 are the same as ASCII '0' - '9' (0x30 - 0x39)
VK_A - VK_Z are the same as ASCII 'A' - 'Z' (0x41 - 0x5A)
284
名前:
デフォルトの名無しさん
:2005/06/07(火) 12:54:22
ありがとうございました。
単に'A'と書いたら大丈夫だったんで、これでいきます。
285
名前:
デフォルトの名無しさん
:2005/06/07(火) 12:56:35
質問させてください。
マウスフック(グローバルフック)を使いたいのですが、うまくいきません。
1回のクリックにつき10回くらい呼び出されてしまいます。
何か対処方法はありますか?
現在下記のようなコードで試しています。
//フックするプロシージャ
LRESULT __stdcall CallWndProc(int nCode,WPARAM wParam,LPARAM lParam) {
if (nCode == HC_ACTION) {
if (wParam == WM_RBUTTONUP) {
//処理
}
}
return CallNextHookEx(g_hHookWnd, nCode, wParam, lParam);
}
286
名前:
デフォルトの名無しさん
:2005/06/07(火) 16:01:04
一度はずしたUSB機器(特にUSBメモリ)を
つかみ直す方法を教えてください
# プログラミングで
287
名前:
デフォルトの名無しさん
:2005/06/07(火) 16:03:57
ExitWindowsExでEWX_REBOOT
288
名前:
286
:2005/06/07(火) 16:08:24
「デヴァイスマネージャ」の
「USBルートハブ」を無効にして
再度,有効にするとUSB機器が再度認識されます
# USB を物理的にはずすことなく
これをプログラミングでやりたいんです
289
名前:
デフォルトの名無しさん
:2005/06/07(火) 16:40:07
deviceをデヴァイスなんて気持ち悪い読み方するなら、
managerもマネイジャと読めよ。
んで、使ったことないけどMSDNのDevice Managementあたりを
みりゃいいんじゃないか?
290
名前:
デフォルトの名無しさん
:2005/06/07(火) 16:47:22
ヴァイブ
291
名前:
デフォルトの名無しさん
:2005/06/07(火) 16:51:30
ヴァイヴ
292
名前:
デフォルトの名無しさん
:2005/06/07(火) 16:53:25
ゔぁいゔ
293
名前:
デフォルトの名無しさん
:2005/06/07(火) 17:03:34
ジャグァ
294
名前:
デフォルトの名無しさん
:2005/06/07(火) 17:05:44
>>280
=282
「ちゃんと定義してある」のか「ただファイル内にそういう文字列があるだけ」なのかが判らんようじゃアプリ開発など夢のまた夢じゃ
295
名前:
デフォルトの名無しさん
:2005/06/07(火) 17:09:34
OpenMutexって重いですか軽いですか?
全てのトップレベルウィンドウのHWNDにちなんだ文字列の
Mutexを順々に検索してヒットしたHWNDに対してメッセージを
投げるという処理をしたいんですが。
296
名前:
デフォルトの名無しさん
:2005/06/07(火) 17:21:23
>>288
なんとなくマジレスしたくないけど、マジレスすると
SetupDiGetClassDevs
SetupDiSetClassInstallParamsでDICS_PROPCHANGE
SetupDiChangeState
でいけるハズ
297
名前:
デフォルトの名無しさん
:2005/06/07(火) 17:31:44
>>295
関数がわかってるならやってみりゃいいだろ
そんな自分で計測すりゃわかるようなことを聞きに来るな
298
名前:
デフォルトの名無しさん
:2005/06/07(火) 17:39:34
相手にしてもらえると喜ぶからスルー汁
>297
299
名前:
デフォルトの名無しさん
:2005/06/07(火) 17:53:29
>>295
あくまでも一般論としてだけど、Open〜は反復呼び出しを
想定されているので*比較的*軽いと言える。
>>297
,298
分かんないんなら無理して反応すんなよ。
この板は答えられない質問を見かけると、ムキになって
否定して掛かるのがときどきいるな。
300
名前:
デフォルトの名無しさん
:2005/06/07(火) 18:04:18
と、やっと自分が答えられる質問が来てちょっと得意げなヒキデブでした。
301
名前:
デフォルトの名無しさん
:2005/06/07(火) 18:17:57
>>300
↑ コイツは
>>297-298
にちがいない^^
302
名前:
デフォルトの名無しさん
:2005/06/07(火) 18:19:37
>>301
↑ コイツは
>>299
に違いない(^ω^)
303
名前:
デフォルトの名無しさん
:2005/06/07(火) 18:22:17
ヴァイブレイシャン
304
名前:
デフォルトの名無しさん
:2005/06/07(火) 18:25:41
盛り上がってまいりました(゜∀゜)ノ
305
名前:
デフォルトの名無しさん
:2005/06/07(火) 18:35:01
そして盛り下がってまいりました(゜д゜)
306
名前:
デフォルトの名無しさん
:2005/06/07(火) 18:38:01
急速にスレェァドゥのクァリティが低下してまいりましたフォー
307
名前:
デフォルトの名無しさん
:2005/06/07(火) 18:55:24
だれもムキになってないと思うけど
面白がってるだけだからフォー
308
名前:
デフォルトの名無しさん
:2005/06/07(火) 19:27:13
ゲイは帰れフォー
309
名前:
デフォルトの名無しさん
:2005/06/07(火) 19:29:46
何この流れフォー
310
名前:
295
:2005/06/07(火) 19:30:45
>>299
ありがとうございました。
311
名前:
デフォルトの名無しさん
:2005/06/07(火) 19:58:59
〃 i, ,. -‐
r' ィ=ゝー-、-、、r=‐ヮォ.〈 /
! :l ,リ|} |. } / .や
. {. | ′ | } l
レ-、{∠ニ'==ァ 、==ニゞ< | ら
!∩|.}. '"旬゙` ./''旬 ` f^| |
l(( ゙′` ̄'" f::` ̄ |l.| | な
. ヽ.ヽ {:. lリ |
. }.iーi ^ r' ,' ノ い
!| ヽ. ー===- / ⌒ヽ
. /} \ ー‐ ,イ l か
__/ ‖ . ヽ、_!__/:::|\ ヽ
312
名前:
デフォルトの名無しさん
:2005/06/07(火) 20:53:56
だが断る!
313
名前:
デフォルトの名無しさん
:2005/06/07(火) 20:59:03
ヮォ
314
名前:
デフォルトの名無しさん
:2005/06/07(火) 23:36:48
>285
「処理」の中で MessageBox() とか呼んでない?
315
名前:
デフォルトの名無しさん
:2005/06/08(水) 00:15:26
>>285
nCode < 0 ならCallNextHookExだってばよ
んで改善されないならハンドルみて確認しろや グローバルなんだべ?
316
名前:
285
:2005/06/08(水) 01:18:16
>314
>「処理」の中で MessageBox() とか呼んでない?
あ、呼んでます。フックできてるか確認するために、
とりあえずMessageBox()で確認しているので。
このせいですかね?他の方法で確認してみます。
317
名前:
デフォルトの名無しさん
:2005/06/08(水) 01:27:24
OpenPrinter をする際に、ネットワークプリンタの場合は文字数が30文字を超えてしまって
オープンエラーになってしました(GetLastErr では、1801 プリンタ名がおかしい)
長い名前のネットワークプリンタの場合の OpenPrinter はどうやるのでしょうか?
318
名前:
にゃこ
:2005/06/08(水) 02:57:24
質問させて頂きます
WindowsMediaPlayerのように歪んだウインドウをつくるには
どのようにすればよいのでしょうか
319
名前:
デフォルトの名無しさん
:2005/06/08(水) 03:30:35
検索キーワード「ウィンドウリージョン」または「レイヤードウィンドウ」
ウィンドウリージョンの方が難易度は低いと思う。
320
名前:
デフォルトの名無しさん
:2005/06/08(水) 03:31:08
>>318
たしかSetWindowRgn
321
名前:
にゃこ
:2005/06/08(水) 03:48:05
319さん、320さん ありがとうございます。がんばってみます。
322
名前:
デフォルトの名無しさん
:2005/06/08(水) 04:33:04
そういうアプリは好きじゃないな。
323
名前:
デフォルトの名無しさん
:2005/06/08(水) 09:37:06
>>299
答えるまでもない質問にいちいち答えるなよ
スレがみにくくなる
324
名前:
デフォルトの名無しさん
:2005/06/08(水) 10:37:47
>>323
( ゚д゚)ポカーン
325
名前:
デフォルトの名無しさん
:2005/06/08(水) 10:54:48
タイムポカーン
326
名前:
デフォルトの名無しさん
:2005/06/08(水) 12:30:48
オーナードローでリストビューを描画しています。
ところが、アプリ側でLVM_SETITEMSTATEを使い、リストビューの項目を選択状態にしても、
WM_DRAWITEM時に、ODS_SELECTEDフラグが立ってくれなくて困っています。
(マウスで普通に項目を選択した場合は、問題なくODS_SELECTEDが付いてます。)
何か解決方法をご存知の方、ひとつよろしくお願いします。
327
名前:
デフォルトの名無しさん
:2005/06/08(水) 13:44:53
>>322
あなたの好みは訊いてません
328
名前:
デフォルトの名無しさん
:2005/06/08(水) 14:01:30
>>327
じゃあ、君の好みはどうですか?
329
名前:
デフォルトの名無しさん
:2005/06/08(水) 14:56:25
>>311
330
名前:
デフォルトの名無しさん
:2005/06/08(水) 18:36:51
乱数の初期化は、こんな↓でいいですか?
GetSystemTime(&t);
srand((t.wSecond << 16 | t.wMilliseconds));
331
名前:
330
:2005/06/08(水) 18:40:42
すいませんtime()ありました。
332
名前:
デフォルトの名無しさん
:2005/06/08(水) 18:46:25
>>330-331
GetTickCount()なんてのもある。
333
名前:
デフォルトの名無しさん
:2005/06/08(水) 18:55:00
QueryPerformanceCounter()なんt(ry
334
名前:
デフォルトの名無しさん
:2005/06/08(水) 19:24:02
好みはSetWindowRgn
335
名前:
デフォルトの名無しさん
:2005/06/08(水) 20:43:54
乱数の使用目的による。
ゲーム程度ならそれで十分だが
暗号鍵の作成だったらやめとけとか
336
名前:
デフォルトの名無しさん
:2005/06/08(水) 21:14:47
暗号鍵の作成にsrandとかrandとか使うなよ(w
337
名前:
デフォルトの名無しさん
:2005/06/08(水) 21:58:58
乱数とはちょと違うがGUIDを生成する手もある。
338
名前:
デフォルトの名無しさん
:2005/06/08(水) 22:04:11
>>326
それ俺もなったなぁ
MFCでだけど
339
名前:
デフォルトの名無しさん
:2005/06/08(水) 23:20:16
>>326
LVM_SETITEMSTATE送るときにLVITEMのstateMaskを間違えてない?
(ListView_SetItemStateマクロの方なら第四引数のmask)
340
名前:
デフォルトの名無しさん
:2005/06/09(木) 06:05:43
すいません、特定のアプリケーションのプロシージャとかではなくて
windowsがアプリケーションにメッセージを送る前にメッセージを
フックしたいのですがどうすればいいですか。教えてくださいお願いします。
341
名前:
デフォルトの名無しさん
:2005/06/09(木) 06:08:55
”グローバルフック”か”システムフック”でサーチすると幸せになれると思うよ。
342
名前:
デフォルトの名無しさん
:2005/06/09(木) 10:39:34
こんにちは
質問ですが、
タブコントロールのタブ部分につけるテキストのサイズを変更したい場合は、
どのようにすればよいのでしょうか。
343
名前:
デフォルトの名無しさん
:2005/06/09(木) 11:10:30
質問なんですが、プロセスIDを取得済みのExplorerに対して、トップウィンドウなりフォルダビューなりにメッセージを送るなどして、他のフォルダに移動したいのですが、どうしたらよいでしょうか?(新しくウィンドウを開くのではなく)
とりあえず今の時点では、その時に表示中のフォルダのサブフォルダの一つに名前を指定して移動できればいいので、キーボード系のメッセージをフォルダ名の順番に送って最後にエンター送ろうかとも思ったのですが、それだと日本語のフォルダ名に対応できません。
将来的には任意のフォルダにフルパス指定で移動っていうのも視野に入れたいので、何かいい方法があったら教えてください。
344
名前:
デフォルトの名無しさん
:2005/06/09(木) 11:20:07
リストビューのアイテムの中にコンボボックスを入れることはできますか?
345
名前:
デフォルトの名無しさん
:2005/06/09(木) 11:40:00
USB接続の新しいドライブが増えたり、フォルダ内の内容が変わったりしたときに、それを検出するにはどうしたらよいのでしょうか?
346
名前:
デフォルトの名無しさん
:2005/06/09(木) 11:53:41
RegisterDeviceNotification
347
名前:
デフォルトの名無しさん
:2005/06/09(木) 13:39:28
FindFirstChangeNotification
348
名前:
デフォルトの名無しさん
:2005/06/09(木) 15:31:58
現在のデフォルトプリンタと、給紙トレイを取得する方法を教えて下さい。
349
名前:
デフォルトの名無しさん
:2005/06/09(木) 15:55:20
トイレの紙を補給する方法を教えて下さい。
350
名前:
デフォルトの名無しさん
:2005/06/09(木) 15:58:27
マニュアルを読んでください。
351
名前:
デフォルトの名無しさん
:2005/06/09(木) 16:06:09
>>349
手でふきなさい。
352
名前:
デフォルトの名無しさん
:2005/06/09(木) 16:29:38
>>349
むしろ拭かなくてよい。
353
名前:
デフォルトの名無しさん
:2005/06/09(木) 16:44:54
拭き取るのは、体に付いた栄養素を取ってしまうことと一緒だからな。
354
名前:
デフォルトの名無しさん
:2005/06/09(木) 17:13:36
>>344
無理
355
名前:
デフォルトの名無しさん
:2005/06/09(木) 17:28:58
>>353
つまり、拭き取ってもう一度口から摂取すればいいわけですね。
356
名前:
デフォルトの名無しさん
:2005/06/09(木) 17:34:17
デフォルトプリンタはたしか
GetProfileString("windows", "device",・・・
でいいんじゃなかったかなあ
357
名前:
デフォルトの名無しさん
:2005/06/09(木) 17:41:37
PrintDlg / PD_RETURNDEFAULT
358
名前:
デフォルトの名無しさん
:2005/06/09(木) 18:14:12
指定したフォルダにあるファイル一覧を取得したい場合はどのようにすればよいのでしょうか。
よろしくお願いします。
359
名前:
デフォルトの名無しさん
:2005/06/09(木) 18:31:18
>>358
FindFirstFile()
FindNextFile()
FindClose()
360
名前:
デフォルトの名無しさん
:2005/06/09(木) 19:24:21
デスクトップ上のウィンドウで一番手前にあるウィンドウをアクティブにするにはどうすればいいですか?
361
名前:
デフォルトの名無しさん
:2005/06/09(木) 20:03:07
一番手前にあるのにアクティブじゃないWindowなんてありません
362
名前:
デフォルトの名無しさん
:2005/06/09(木) 20:07:47
なこたない
363
名前:
デフォルトの名無しさん
:2005/06/09(木) 20:12:15
>>360
理屈ではSetActiveWindow(GetTopWindow(NULL));
でもXPとかでは勝手に手前に出さないようになった。
364
名前:
デフォルトの名無しさん
:2005/06/09(木) 20:16:21
PlgBlt、
MicroSoftによると2000、XPは対応で
95,98は未対応とのことだが、
これってMeは未対応ってことですよね。
365
名前:
デフォルトの名無しさん
:2005/06/09(木) 20:18:40
ウィンドウの背景描画用ブラシを動的に交換することはできますか?
あるラジオボタンがクリックされたときに、そのラジオボタンの領域
の色(これはウィンドウの背景色ですよね?)を変更したいのです。
366
名前:
デフォルトの名無しさん
:2005/06/09(木) 20:18:52
そう。
367
名前:
デフォルトの名無しさん
:2005/06/09(木) 20:21:41
>>366
タイミングとレス内容からして
>>364
へのレスですよね。
やっぱりそうか。どもです。
368
名前:
デフォルトの名無しさん
:2005/06/09(木) 20:28:31
>>365
オーナードロー
369
名前:
デフォルトの名無しさん
:2005/06/09(木) 20:48:07
WM_CTLCOLOR
370
名前:
デフォルトの名無しさん
:2005/06/09(木) 20:49:29
>>362
なこたないこたぁない
371
名前:
デフォルトの名無しさん
:2005/06/09(木) 20:55:05
HWND_TOPMOST ((HWND)-1) winuser.h
ウィンドウをすべての最前面ウィンドウよりも前に置きます。ウィンドウは、 アクティブでなくても手前に置かれます。
372
名前:
デフォルトの名無しさん
:2005/06/09(木) 20:55:16
MFCではなくAPIを使ったSDKというのでプログラムを書けるようになるのが目標の
初心者プログラマです
今後の勉強の仕方に悩んでおり、相談にのっていただけると助かります
Cの入門書が終わり、この後、VC++を購入して
猫でもわかるWINDOWSプログラミング
プログラミングWindows第5版〈上、下〉
Win32API完璧マスタ―Visual C++プログラミング
のどれかの本を購入して勉強していこうと思っております
正直、VC++とかMFC・SDKとかAPIとかについて良く分かっておらず
このような勉強の仕方でよいのか不安があります
私の認識では
・VC++とは、コンパイラ・デバッガ・MFCと呼ばれる各種ライブラリ等が入った
開発環境で、MFCではなくSDKを使いたい人にも便利で、Cをやるなら買っておいた
ほうがよいソフト
・MFCとは、WINDOWS用プログラムを作る際、知らなければならないAPIは命令の数も
多く難しい。VC++では、APIを知らない人でもWINDOWSプログラムが簡単に作れるように
MFCという各種ライブラリがある。一般的にVC++用の初級本では、特にAPI・SDK用と書いていない場合
MFCを中心とした本が多い
・SDKとは、APIを使ってWINDOWSプログラムを作る技術
・APIとは、WINDOWSプログラムを作る際、WINDOWSのOSに命令を渡す方法
こんな認識であってますか?
また、C入門書の後、前記の3つの本でVC++とWINDOWSプログラムを勉強しようと
思っておりますが、これらの中でC++やVC++の使い方を前もって知らないときつい
本はありますか?
このような勉強方法以外に、お勧めの勉強法はありますか?
長くなりましたが、宜しくお願いします
373
名前:
デフォルトの名無しさん
:2005/06/09(木) 21:11:11
コンパイラ・デバッガはツールでMFCはライブラリでVC++はそれらを含む
パッケージ。SDKだけならVC++はそう便利でもないような。API知らないと
MFCは苦しい。むしろMFCで覚える量は増える。減るのはコーディングの
量だけ。本は「ウィザードで雛形を作りましょう」って感じのが殆ど。コードを
直に書きましょうってのはほとんどない。そしてウィザードの作ったコードの
意味が分からずにドツボにハマる。SDKはSoftware Development Kitの略。
その名の通り、kit。技術ではない。APIは渡す「方法」ではなく、命令(または
その集合)そのもの。
374
名前:
デフォルトの名無しさん
:2005/06/09(木) 21:13:31
SDKだけでもVC++は便利だと思います
375
名前:
デフォルトの名無しさん
:2005/06/09(木) 21:21:44
>>372
http://e-words.jp/w/Visual20C2B2B.html
http://e-words.jp/w/mfc.html
http://e-words.jp/w/API.html
http://e-words.jp/w/SDK.html
猫でも〜 なら↓覗いてみ
http://www.kumei.ne.jp/c_lang/
俺ならクラスの勉強に移る
376
名前:
375
:2005/06/09(木) 21:24:33
クラスってかC++だな
377
名前:
デフォルトの名無しさん
:2005/06/09(木) 21:59:39
>>368
「オーナードロー」を調べてみました。そして、WM_DRAWITEM がプローシージャにきた時に、
そのまま return 0; するプログラムを書いてみたのですが、ラジオボタンの◎もテキストも
表示されなくなりました。なんだかよくわかりません。ラジオボタンの◎とテキストを返し
てください。
>>369
WM_CTLCOLOR は windows.h で定義されていないようです。コンパイラに怒られました。
378
名前:
デフォルトの名無しさん
:2005/06/09(木) 22:01:55
コンパイラに怒られる前にMSDNあたってみろよ
379
名前:
デフォルトの名無しさん
:2005/06/09(木) 22:07:27
>377
オーナードローというのはコントロールの描画をコントロールに任せず自前で描く事。
チェックの状態やテキストは BM_GETCHECK や WM_GETTEXT で取得。
380
名前:
デフォルトの名無しさん
:2005/06/09(木) 22:11:30
>>363
GetTopWindowするとうちの環境ではIMEのツールバーが返ってきてしまい
それをアクティブにするとエラーがでてしまいます(成功してもあまり意味ないですし・・・)。
Alt+TABで切り替えられるウィンドウに限定することは出来るでしょうか?
やりたいのはこんなことなんですが
// アクティブウィンドウを裏に回して次のウィンドウに切り替える
HWND h = GetForegroundWindow();
SetWindowPos(h, HWND_BOTTOM, ...);
h = GetTopWindow(0); // <-ここでIMEのツールバーが引っかかる
SetActiveWindow(h);
381
名前:
デフォルトの名無しさん
:2005/06/09(木) 22:14:20
>>361
( ´,_ゝ`)プッ・・
382
名前:
デフォルトの名無しさん
:2005/06/09(木) 22:21:19
>>379
ということは◎やテキストも自分で描くんですか?背景色を変えたいだけ
なんですけど。今、ラジオボタンの領域の背景はグレーなのですが、
クリックして選択された場合には赤などに(選択されたことを強調する意味)
したいのです。その他の点はまったく同じで。
383
名前:
デフォルトの名無しさん
:2005/06/09(木) 22:39:11
漏れは、サブクラス化してWM_PAINTを乗っ取る方法を
使ったな。ほかにも幾つか捕まえるべきメッセージが
あったはずだけど、それは忘れた。
384
名前:
デフォルトの名無しさん
:2005/06/09(木) 22:39:17
だから、WM_CTLCOLOR
385
名前:
デフォルトの名無しさん
:2005/06/09(木) 22:51:50
>>384
調べたらMFCがどうたらとか出てきたのですが。。。
このスレMFCはなしでしょ?Win32APIの呼び出しで解決したいのですが。
WindowBackgroundBrushChangeHappy(hMyRadioButton, hMyBrush) みたいな。
386
名前:
デフォルトの名無しさん
:2005/06/09(木) 22:52:30
WM_CTLCOLORはWIN16時代のもので、
今は
WM_CTLCOLORBTN、WM_CTLCOLORDLG、WM_CTLCOLOREDIT、...
に分かれている
つかMSDN嫁
387
名前:
デフォルトの名無しさん
:2005/06/09(木) 22:59:06
>>381
(^ω^;)そう笑うなよ
388
名前:
365
:2005/06/09(木) 23:47:44
>>386
ありがとう。ありました。でもうまくいきません。どなたかソース見てください。
元の質問は
>>365
です。
#include <windows.h>
#define IDR_COKE 10001
#define IDR_COFFEE 10002
void OnCreate(HWND hWnd)
{
CreateWindow("BUTTON", "コーラ", WS_CHILD | WS_VISIBLE | BS_AUTORADIOBUTTON | WS_GROUP,
0, 0, 100, 18, hWnd, (HMENU)IDR_COKE, (HINSTANCE)GetWindowLong(hWnd, GWL_HINSTANCE), 0);
CreateWindow("BUTTON", "コーヒー", WS_CHILD | WS_VISIBLE | BS_AUTORADIOBUTTON,
0, 20, 100, 18, hWnd, (HMENU)IDR_COFFEE, (HINSTANCE)GetWindowLong(hWnd, GWL_HINSTANCE), 0);
}
389
名前:
続き
:2005/06/09(木) 23:48:47
LRESULT CALLBACK WndProc(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp)
{
switch (msg) {
case WM_CREATE:
OnCreate(hWnd);
return 0;
case WM_DESTROY:
PostQuitMessage(0);
return 0;
case WM_CTLCOLORBTN:
return (LRESULT)CreateSolidBrush(RGB(0xff, 0, 0));
default:
return DefWindowProc(hWnd, msg, wp, lp);
}
}
390
名前:
続き
:2005/06/09(木) 23:50:05
int WINAPI WinMain(HINSTANCE hInst, HINSTANCE, LPSTR, int nCmdShow)
{
WNDCLASS winclass = {
CS_HREDRAW | CS_VREDRAW, WndProc, 0, 0, hInst, 0, LoadCursor(0, IDC_ARROW),
(HBRUSH)(COLOR_WINDOW+1), 0, "MainWindow",
};
RegisterClass(&winclass);
HWND hWnd = CreateWindow("MainWindow", "test", WS_OVERLAPPEDWINDOW,CW_USEDEFAULT, 0,
CW_USEDEFAULT, 0, 0, 0, hInst, 0);
ShowWindow(hWnd, nCmdShow);
UpdateWindow(hWnd);
MSG msg;
while (int rt = GetMessage(&msg, 0, 0, 0)) {
if (rt == -1) break;
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return 0;
}
391
名前:
デフォルトの名無しさん
:2005/06/09(木) 23:51:43
ソースを貼り付けんな馬鹿。
どっかにうぷってそのアドレスを貼り付けろ
392
名前:
365
:2005/06/09(木) 23:53:36
どっかにうっぷる方法が分かりません。もうしないので、ご勘弁を。
393
名前:
デフォルトの名無しさん
:2005/06/09(木) 23:54:41
荒らしヨクナイ
394
名前:
デフォルトの名無しさん
:2005/06/10(金) 01:18:35
> return (LRESULT)CreateSolidBrush(RGB(0xff, 0, 0));
アフォ
395
名前:
365
:2005/06/10(金) 01:28:33
>>394
もっと詳しく。リークなら怖くありません。テストプログラムなので。
396
名前:
デフォルトの名無しさん
:2005/06/10(金) 02:14:42
ラジオボタンなら
WM_CTLCOLORBTN じゃなくて
WM_CTLCOLORSTATIC だ。
397
名前:
デフォルトの名無しさん
:2005/06/10(金) 02:17:12
どうでもいいけど
>>365
はC++で完全にC + SDKスタイルで書いてるんだな
そういう人、結構いるの?
398
名前:
デフォルトの名無しさん
:2005/06/10(金) 06:13:59
個人でMFC使う利点がわからないので俺もSDKスタイル
399
名前:
デフォルトの名無しさん
:2005/06/10(金) 06:26:02
COM関係扱うときはMFCとかATL/WTLのほうが楽じゃないか?
といいつつ俺も普段は生APIだな。
400
名前:
デフォルトの名無しさん
:2005/06/10(金) 06:33:16
俺は生APIから入ったからAPIは知ってるけどMFC・ATL/WTLを知らない
401
名前:
デフォルトの名無しさん
:2005/06/10(金) 07:15:36
ぶっちゃけ生API派な俺にはMFCとかキモ過ぎ
自分で必要なクラス設計した方が気持ちいい
402
名前:
デフォルトの名無しさん
:2005/06/10(金) 07:40:40
ATL/WTLはいいと思うけどな。ATL/WTLを使い出す前はメッセージクラッカー使っていた。
どっちも使っている人少ない……。 ○| ̄|_
403
名前:
デフォルトの名無しさん
:2005/06/10(金) 07:52:08
生APIはソースが汚くなるから、ATL/WTLかMFCを使う。
404
名前:
デフォルトの名無しさん
:2005/06/10(金) 07:55:04
ここは生々しいインターネッツですね。
405
名前:
デフォルトの名無しさん
:2005/06/10(金) 08:09:24
やっぱり生がいちばん
406
名前:
デフォルトの名無しさん
:2005/06/10(金) 08:16:29
質問です
コンパネにある「サウンドとオーディオ」の
ハードウェアtabにある既定のデバイスを、
ソフト側から変えたい
(たとえばあるソフトを使うときは特定のデバイスを出力対象にしたい)
のですが、APIは何を使えばよいんでしょう?
ボリュームをかえるmixerってのはよく検索にひっかかるんですが、
どうも求めるものじゃなさそうだし・・・
ちなみに開発環境はXPでVB
407
名前:
デフォルトの名無しさん
:2005/06/10(金) 09:27:16
しかし、MFCにあるけどAPIに無い、って場合
ソース見てどのAPI使ってるかの確認くらい
できないのかねぇ
408
名前:
デフォルトの名無しさん
:2005/06/10(金) 09:35:21
FillSolidRectとかな
409
名前:
デフォルトの名無しさん
:2005/06/10(金) 10:27:36
Windows 2000
「ハードウェアの取り外し」ダイアログで
適当な装置に対して取り外し操作がおこなわれたときの
アクションをつくる必要があります
APIドキュメントを読むと
WM_DEVICECHANGE
というメッセージがきて
「取りはずし要求」をしめす
DBT_DEVICEQUERYREMOVE
というイベントをもっている,
ということになっています.
ところが実験してもこのイベントのメッセージがきません
「取りはずし」が終わったことを示す
DBT_DEVICEREMOVECOMPLETE
というイベントはちゃんときています.
ほしいのは「取りはずし」の事前のメッセージなんです
なぜこれが来ずに終わった後のは来るのでしょうか?
どうしたら事前に来るようになるのでしょうか?
410
名前:
デフォルトの名無しさん
:2005/06/10(金) 11:32:12
SDKでグローバル変数を使わず作るのが本当の熟練者。
411
名前:
デフォルトの名無しさん
:2005/06/10(金) 11:34:39
>>410
熟練者とまで行かなくても使わずに済ませられると思うが
412
名前:
デフォルトの名無しさん
:2005/06/10(金) 11:43:05
もちろんウィンドウプロシージャ内でのstatic変数も駄目。
413
名前:
デフォルトの名無しさん
:2005/06/10(金) 11:43:10
使っても問題ないしな
414
名前:
デフォルトの名無しさん
:2005/06/10(金) 12:01:33
GetWindowLongだのGetPropだのサンクだの程度では熟練者じゃないな。
415
名前:
デフォルトの名無しさん
:2005/06/10(金) 14:18:43
>>402
ATLはやはりCOM系の開発で使われることが多い希ガス
ATL7+WTLで普通のWindowプログラム書くの、悪くないんだけどWTLは
非標準だしドキュメント不足なので、仕事で使うには二の足を踏んでしまう
まあATL7だけでも、生APIゴリゴリよりはぜんぜんマシだと思うけど。
特にActive X controlのホスティングとか、生APIではやってらんない。
あれと同等のものを作るのは車輪の再発明でしかないよ。
416
名前:
デフォルトの名無しさん
:2005/06/10(金) 15:20:05
>WTLは非標準だし
WindowsAPI、MFCは標準なのか?
417
名前:
デフォルトの名無しさん
:2005/06/10(金) 15:32:07
最近メッセージクラッカーを覚えて少しだけソースが読みやすくなったと思っています。
MFCとかATL/WTLってどういうもの?
Win32APIをクラスでラップしたものという解釈でいいの?
覚えてみようかとも思っているけど、MFCとATLってどっちがいいのかわからないんですが。
418
名前:
デフォルトの名無しさん
:2005/06/10(金) 15:58:16
>>417
MFCよりATLの方がAPIをラップしただけという感が強いと思う。
ATL自体はメッセージクラッカーのような物を持っていない。(W/LPARAMがそのまま渡される)
そこへWTLを使うとメッセージをクラックするのがついてくる。
419
名前:
デフォルトの名無しさん
:2005/06/10(金) 16:11:21
FindFirstFileを使って、フォルダ内のファイルを検索したんですが、
FindFirstFileからWIN32_FIND_DATAに格納される値が必ず"フフフフフフフフフフフフフフフ"となってしまいます。
なぜなのでしょうか。
C言語ソースファイルだけを抽出しようとしています。
ちなみに、指定しているパス名は、
WIN32_FIND_DATA FindFileData;
HANDLE hFind;
hFind=::FindFirstFile("C:\\MySourceFile\\*.c",&FindFileData);
というかんじです。
420
名前:
デフォルトの名無しさん
:2005/06/10(金) 16:13:02
>>416
MS的には非標準でしょ
>>417
C++使ってオブジェクト指向でWindowを扱おうとすると
Window class --> C++ class
Window --> C++ object
のように対応付けるのが普通。というかそうしたくなる。
そうすると問題になるのが、グローバル/staticな関数であるWindowProcで、
これをC++クラスのインスタンスメソッド(メンバ関数)にマップしたい訳。
で、その方法は色々あって、一番単純なのはSetWindowLongでC++クラスの
インスタンスのポインタをWindowに設定してしまうことなのだが、
# こうした方法の例はPlatformSDKのCOMサンプルなどに存在する。
ATLのようなライブラリではもっとマシで効率の良い方法が用いられている。
まあC APIのラッパーで基本的には間違ってないんだけど、
上述したように、よりC++的にWindowingできる仕組み・フレームワークを提供している
という点がまあ一番のポイントじゃないかな。
それと、利便性だけで言うなら、COMコンポーネントを使うのは
MFCやATLを使う方がCで直触りするよりずっと簡単。
COMサポートに関しては、ただの「薄いラッパー」をはるかに超える
充実した機能が提供されてるから。
421
名前:
デフォルトの名無しさん
:2005/06/10(金) 16:15:59
>>419
関数が失敗してるんじゃね?
戻り値をチェックしる
422
名前:
デフォルトの名無しさん
:2005/06/10(金) 16:51:23
フフフ・・・はdebugモードでの未初期化の内容
つまり、フフフがセットされたのではなくて
誰もセットしてないってこと。
>>421
の言うように失敗してると思われ
423
名前:
デフォルトの名無しさん
:2005/06/10(金) 17:22:23
ちょいと気になることなんだけど
VirtualAllocVlmのような64bitAPIは抹殺されたの?
英語版のMSDNに載ってないんだけど。
424
名前:
デフォルトの名無しさん
:2005/06/10(金) 17:29:38
フフフはint3
425
名前:
デフォルトの名無しさん
:2005/06/10(金) 17:31:11
ヒヒヒヒヒ は ネオ麦茶
426
名前:
デフォルトの名無しさん
:2005/06/10(金) 17:52:00
ウホッ は ヤマジュン
427
名前:
デフォルトの名無しさん
:2005/06/10(金) 19:03:17
>>416
このスレでそれを言っちゃおしまいよ
428
名前:
デフォルトの名無しさん
:2005/06/10(金) 19:03:56
>>417
ATL にも MFC にも、APIを適当にラップしたクラスと、
アプリケーションやコンポーネントを作るためのフレームワークとの
両方が入ってます(他にユーティリティ的なものもある)。
API をラップした部分ははっきりいってどうでも良いものが大半なのですが、
フレームワークの方は VC++ の独自拡張構文や VisualStudio の支援とも
有機的に結合していて大変結構役に立ちます。
429
名前:
417
:2005/06/10(金) 19:24:59
ちょっと調べてみたところ、ATLやWTLが面白そうです。
Win32APIは今までどおり使いたいけど、
生でAPIを使ってGUIを書くと面倒ですし。
といっても、その辺に転がっているGUIの独自なライブラリだと、
自由にできなくて不満だったり。
WindowsのGUIの仕組みって、もう少し簡単にはできなかったのかな。
といっても、現行のメッセージを投げる以上にいい仕組みが思いつかないへたれですがorz
430
名前:
365
:2005/06/10(金) 21:31:05
>>396
ありがとう。まだうまくいかないけどがんばってみます。
431
名前:
デフォルトの名無しさん
:2005/06/10(金) 23:48:22
フフフフフフフフフ って笑われてんだよ おめー何つくってんだよって
432
名前:
デフォルトの名無しさん
:2005/06/11(土) 00:06:43
WTLがバージョンアップした日にWTLスレよりWTL関係のレスが多いスレはここですか。
433
名前:
デフォルトの名無しさん
:2005/06/11(土) 01:15:56
Windowsプログラミングの達人になるためにはどのくらいの期間が必要ですか?
434
名前:
デフォルトの名無しさん
:2005/06/11(土) 01:18:00
今まで食ったパンの枚数×秒
435
名前:
デフォルトの名無しさん
:2005/06/11(土) 01:24:04
まじめに頼む。
436
名前:
デフォルトの名無しさん
:2005/06/11(土) 01:24:05
すまんかった
437
名前:
デフォルトの名無しさん
:2005/06/11(土) 01:24:59
1秒でレスが。。。
438
名前:
デフォルトの名無しさん
:2005/06/11(土) 02:00:02
>>435
人それぞれ
439
名前:
デフォルトの名無しさん
:2005/06/11(土) 02:02:34
どれぐらいのレベルならWindowsプログラミングの達人なんだろうな
IEやMicrosoft Excelが自分で組めたら達人か?
カーネル書くとかは、Windowsプログラミングとはいえないような気がするな
440
名前:
デフォルトの名無しさん
:2005/06/11(土) 02:10:45
>>439
初心者の質問に
迅速かつ丁寧に答えられるようになったらマスターだぜъ( ゚ー^)
441
名前:
デフォルトの名無しさん
:2005/06/11(土) 02:52:05
デュアルディスプレイの環境で2つ目のディスプレイのDCを取得するにはどうしたらいいのでしょうか?
442
名前:
デフォルトの名無しさん
:2005/06/11(土) 05:21:09
Windowsのページ保護を勉強して悩んでいるんですが、プロセス空間内に、読めるけど書き込めないページが存在してますよね?
これはページ属性のR/Wビット(PTE-b1)を0にしているからだと思うんですが、このビットは486以降の機能だと本に書いてありました。(アスキー出版局「はじめて読む486」P.308)
Windows95や以前のWindowsNTでは386(SX)が最低スペックですよね?
だとするとそうしたマシンではこの機能が実現されてなかった、というわけなんでしょうか・・・?(どのページも書き込めてしまったのか!?)
誰か、386で95やNTを動かしてみた、あるいは現在動かしている、という方、いらっしゃいますかね?
ご存じの方、お教え下さい。
443
名前:
デフォルトの名無しさん
:2005/06/11(土) 08:18:27
ウィンドウを作って、ステータスバーを付けたのですが
スクロールバーを付けていると、水平スクロールバーの
上にステータスバーが表示されてしまいます。
ステータスバーをウィンドウの1番下に表示したいのですが
なにかいい方法はないでしょうか。
444
名前:
デフォルトの名無しさん
:2005/06/11(土) 08:40:11
親ウィンドウにステータスバーを貼り付け残りの部分に子ウィンドウを一枚張る。
その子ウィンドウにスクロールバーをつける。
445
名前:
デフォルトの名無しさん
:2005/06/11(土) 11:12:42
>>442
スレタイ嫁
446
名前:
デフォルトの名無しさん
:2005/06/11(土) 12:23:52
>>445
「質問箱」ですよね。だからここで質問してるのです。
447
名前:
デフォルトの名無しさん
:2005/06/11(土) 12:45:08
何の質問箱か。それが重要だ。
448
名前:
デフォルトの名無しさん
:2005/06/11(土) 13:09:34
一応メモリ割り当てAPI関係の質問じゃないか?
というか他に該当スレ思いつかん
分かるのがいるかどうかは別として
386SXじゃ95はおろか3.1でも実用にならないしなぁ
449
名前:
デフォルトの名無しさん
:2005/06/11(土) 16:17:33
APIをはじめたばかりであまりわからないのですが、
ビットシフトはなんの役に立つのでしょうか?
450
名前:
デフォルトの名無しさん
:2005/06/11(土) 16:19:23
APIとは関係ありません。
451
名前:
デフォルトの名無しさん
:2005/06/11(土) 16:43:20
こんばんわ
リソースにあるビットマップファイルをLoadBitmapで読み込むのはわかりますが、
ファイルとしてある.bmpを読み込みHBITMAPへ格納するための手順がわかりません。
簡単で構いませんので、使用するAPIを教えていただけ無いでしょうか。
後は私が調べます。
よろしくお願いいたします。
452
名前:
デフォルトの名無しさん
:2005/06/11(土) 16:45:25
LoadImage
453
名前:
デフォルトの名無しさん
:2005/06/11(土) 16:46:58
>>451
LoadImage()でLR_LOADFROMFILE指定
454
名前:
デフォルトの名無しさん
:2005/06/11(土) 16:52:13
リストビューのアイテム欄にコンボボックスつけられたっけ?
455
名前:
デフォルトの名無しさん
:2005/06/11(土) 16:55:17
そんな機能はリストビューには無い。
456
名前:
デフォルトの名無しさん
:2005/06/11(土) 17:16:48
>>454
付けようと思えば付けれる
457
名前:
デフォルトの名無しさん
:2005/06/11(土) 17:31:16
ただ上に被せるだけだがな
458
名前:
デフォルトの名無しさん
:2005/06/11(土) 17:44:00
リストビュー+エディットやコンボでお手軽グリッドみたいなのは
よくやるな
459
名前:
デフォルトの名無しさん
:2005/06/11(土) 20:19:51
OfficeやVisualStudioで使われているリバー(ウィンドウ上側についてる)のライブラリは一般公開されてますか?
是非使いたいのですが。
460
名前:
デフォルトの名無しさん
:2005/06/11(土) 20:30:45
>>459
ttp://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnwui/html/msdn_rebar.asp
461
名前:
デフォルトの名無しさん
:2005/06/11(土) 21:57:59
>>444
助かりました。
ありがとうございます。
462
名前:
デフォルトの名無しさん
:2005/06/11(土) 21:59:31
>>460
それはOfficeで使われてるツールバーとは違いますよ。
463
名前:
デフォルトの名無しさん
:2005/06/11(土) 22:22:24
じゃXPとか2003とか言わんと
464
名前:
デフォルトの名無しさん
:2005/06/11(土) 22:57:04
Windowのコンテントカラーを変えたい場合はどのAPIを呼べばいいのでしょうか?
Windowsの場合は、ウィンドウでデフォルトが白、ダイアログで灰色ですよね。
465
名前:
デフォルトの名無しさん
:2005/06/11(土) 23:04:07
>>464
http://wisdom.sakura.ne.jp/system/winapi/win32/win60.html
466
名前:
464
:2005/06/11(土) 23:36:49
>>465
できれば、ウィンドウ個別に色を変えたいのですが。
467
名前:
デフォルトの名無しさん
:2005/06/11(土) 23:43:27
VCでウィンドウソフトを作っているんだけど(APIのみ)
そのソフトを閉じるときタマに反応が返ってこなくなりOS(XP)の動作もおかしく
なってしまいます。
原因はスレッドのシグナル待ちが考えられるけどそれ以外に原因が思いつきません。
メモリーはリークはしていません。
誰かアドバイスください。
468
名前:
デフォルトの名無しさん
:2005/06/11(土) 23:45:44
>>467
そのスレッドのシグナル待ちをどうにかしろよとしか言えない。
469
名前:
デフォルトの名無しさん
:2005/06/11(土) 23:45:59
>>467
ソース晒せ
470
名前:
デフォルトの名無しさん
:2005/06/11(土) 23:46:16
>>466
諦めろ
471
名前:
デフォルトの名無しさん
:2005/06/12(日) 00:21:55
>>459
http://www.bcgsoft.com/bcgcontrolbar.htm
こんなのあるぐらいだから、されてねーんじゃね?
472
名前:
デフォルトの名無しさん
:2005/06/12(日) 00:54:46
>>467
デバッグ実行すれば、どこで制御が返って来なくなるかわかるだろ。
473
名前:
デフォルトの名無しさん
:2005/06/12(日) 01:23:34
>>467
GetMessageが-1返してるとか
474
名前:
デフォルトの名無しさん
:2005/06/12(日) 04:47:42
CPUとHDDの温度を取得する方法を教えてください
475
名前:
デフォルトの名無しさん
:2005/06/12(日) 08:21:32
>>466
オーナードロー
476
名前:
デフォルトの名無しさん
:2005/06/12(日) 08:21:55
>>474
BIOS依存。確かAPIでは無い。
477
名前:
デフォルトの名無しさん
:2005/06/12(日) 08:43:36
ThemeAPI関係で質問させてください。
VSを適用したときのReBarコントロールの背景を描画したいので
すが、OpenThemeDataでReBarのテーマハンドルを取得し、
DrawThemeBackgroundでRP_BANDを指定したのですが何も描画
されませんでした。
CodeProjectから
ttp://www.codeproject.com/w2k/xpvisualstyle.asp
このようなものをみつけ、RebarのRP_BANDを調べてみたのです
が、どのテーマを調べても何もセットされないことがほとんどでした。
他のパーツなのかと思い、一致するものを探したのですがどうも
同じパーツを見つける事ができません。
Rebar(もしくはToolbar)コントロールの背景はどうすれば描画できる
のでしょうか?
478
名前:
デフォルトの名無しさん
:2005/06/12(日) 09:56:41
CPUの現在のクロック数などを取得するにはどうしたらよいのでしょうか?
479
名前:
デフォルトの名無しさん
:2005/06/12(日) 12:35:09
GetCPUClock
480
名前:
デフォルトの名無しさん
:2005/06/12(日) 13:48:17
GetCPUClockAndSoOn
481
名前:
デフォルトの名無しさん
:2005/06/12(日) 14:09:55
TreeView_SetItem(m_hWnd,pItem);で、TV_ITEMをセットした後、なぜか強制終了するのですが、
このような不具合ってご存知な人はいますか?
case WM_NOTIFY:
{
MSGFILTER *pmf;
TV_DISPINFO *ptv_disp;
int x,y;
if (wp==11000) {
ptv_disp=(TV_DISPINFO *)lp;
if(ptv_disp->hdr.code==TVN_ENDLABELEDIT)
{
tree.SetItem(&ptv_disp->item);
}
}
}
void CWinMyLapTree::SetItem(TV_ITEM* pItem)
{
TreeView_SetItem(m_hWnd,pItem);
}
482
名前:
デフォルトの名無しさん
:2005/06/12(日) 14:10:31
if (wp==11000) {
11000というのは、リストビューのIDです
483
名前:
デフォルトの名無しさん
:2005/06/12(日) 14:12:15
TreeView_SetItem(m_hWnd,pItem)の返り値は0で成功してます。
484
名前:
デフォルトの各無しさん
:2005/06/12(日) 14:38:58
return も break もしてないから次のラベルまで走ってんジャネーノ
知らねーけど
485
名前:
デフォルトの名無しさん
:2005/06/12(日) 15:28:32
C言語を一週間前に始めてifとかwhileとかを一通り覚えただけの俺が
今すぐにwinAPIでのゲーム作りにとりかかるのって無謀ですかね?
486
名前:
483
:2005/06/12(日) 15:32:40
どうやら、TreeView_EditLabelを呼び出し処理後(エディット後)、強制終了します。
現在、原因究明中です。
487
名前:
デフォルトの名無しさん
:2005/06/12(日) 15:32:55
>>485
無謀だと思う。
平仮名覚えたてで小説書こうとするようなもんだ。
488
名前:
デフォルトの名無しさん
:2005/06/12(日) 15:33:34
やりながら覚えるしかねーよ やらなきゃ覚えねーよ
目標あるのはいいことだ ただ自分の予定してる期間の100倍はかかると思っとけ
ゲームの内容にもよるが
489
名前:
デフォルトの名無しさん
:2005/06/12(日) 15:44:50
レスどうも。
やはり無謀でしたか・・・。HPとかみてもチンプンカンプンなわけだ。
出直してまいります。
490
名前:
デフォルトの名無しさん
:2005/06/12(日) 15:46:31
シューティングやアクション系なら素直にHSPでもつかっとけ
491
名前:
デフォルトの名無しさん
:2005/06/12(日) 16:11:42
俺は29歳だけど、Win32APIは余裕だよ。
MFCもマスターしてるし。
今から.NET覚えるつもり。
ただ、そんな俺も、18歳の時に始めてMacintoshのToolboxAPIを見て、「なんじゃこれ!???」と驚いたものです。
あまりの難しさに。
492
名前:
デフォルトの名無しさん
:2005/06/12(日) 16:13:47
つ チラシの裏
493
名前:
デフォルトの名無しさん
:2005/06/12(日) 16:45:21
φ(・∀・)
チラシの裏
494
名前:
483
:2005/06/12(日) 17:13:46
解決しました。
ツリービューのエディタ部分って、編集が終わったらマウスのクリックじゃないと終われないんだな。
キーボードのリターンキーだと無反応だわ。
495
名前:
デフォルトの名無しさん
:2005/06/12(日) 17:19:20
CPUの現在のクロック数などを取得するにはどうしたらよいのでしょうか?
496
名前:
デフォルトの名無しさん
:2005/06/12(日) 17:27:21
その質問最近どこかで見かけたな
497
名前:
デフォルトの名無しさん
:2005/06/12(日) 17:28:14
>>496
>>478
498
名前:
デフォルトの名無しさん
:2005/06/12(日) 17:55:01
CPUの現在のクロック数などを取得するにはどうしたらよいのでしょうか?
499
名前:
デフォルトの名無しさん
:2005/06/12(日) 18:10:57
>>442
PTEのR/Wビットなら386の時代からあるよ。
その本が変なこと書いてるか、喪前さんが誤読してるかのどっちかだろ。
あと、CPU特化話だから機械語なんとかってスレで聞いた方がいいかと。
>>491
難しいっていうか、面倒臭いんだよな。
WinAPIからDefWindowProc()を取り除いた風って言えばわかりやすいかな。
500
名前:
デフォルトの名無しさん
:2005/06/12(日) 18:16:16
最新技術.NETのほうがWin32より簡単な罠
■過去ログ置き場に戻る■
1-
前250
次250
最新50
DAT2HTML
0.33f Converted.