★初心者にVisual C++を教えるスレ★ Part6
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
NGNGVisual C++ 初心者用スレッドです。
前スレ・関連スレは、>>2 ぐらい。
0002デフォルトの名無しさん
NGNG★初心者にVisual C++を教えるスレ★ Part5
http://pc2.2ch.net/test/read.cgi/tech/1048698321/
★初心者にVisual C++を教えるスレ★ Part4
http://pc2.2ch.net/tech/kako/1044/10441/1044196393.html
★初心者にVisual C++を教えるスレ★ Part3
http://pc2.2ch.net/tech/kako/1038/10381/1038160750.html
★初心者にVisual C++を教えるスレ★ (←実はPart2)
http://pc3.2ch.net/tech/kako/1030/10309/1030985362.html
★初心者にVisual C++を教えるスレ★
http://pc3.2ch.net/tech/kako/1023/10235/1023530449.html
/** 関連スレ **/
■ VisualC++(MFC限定)相談室 MFC7.dll■
http://pc2.2ch.net/test/read.cgi/tech/1047949606/l50
Win32API 質問箱 Build11
http://pc2.2ch.net/test/read.cgi/tech/1052651750/l50
C++相談室 part19
http://pc2.2ch.net/test/read.cgi/tech/1052625846/l50
/** 外部リンク **/
猫でもわかるプログラミング
http://www.kumei.ne.jp/c_lang/
MSDN ライブラリ
http://www.microsoft.com/japan/msdn/library/
0003デフォルトの名無しさん
NGNG削除依頼出しておけよ
0004デフォルトの名無しさん
NGNG質問・検索の仕方はここを見れ。
http://www.geocities.co.jp/Beautycare/4965/public/template.html
0006デフォルトの名無しさん
NGNG0007デフォルトの名無しさん
NGNG0008デフォルトの名無しさん
NGNG0009デフォルトの名無しさん
NGNGふっと時計に目をやる。
まだ仕事までには、3時間以上時間がある・・・
俺は、まだ眠っている頭を覚ますためにコーヒーメーカーのスイッチを入れた。
しばらくすると、コーヒーの良い香りが部屋を追おう。
すっと手を伸ばし、タバコをくわえ火を付けた。
そして、一言、俺は呟いた・・・ 「9ゲット」と。。。
0010デフォルトの名無しさん
NGNGはやる胸を抑えつつ向かう。
そこには彼女が待っていた。
彼女は「読んで・・・コレ」とはにかみながら俺に手紙を渡し、去っていった。
家に帰って彼女の手紙を読んでみた。
そこにはこう書いてあった
「10ゲット」
0011前986
NGNG>> http://pc2.2ch.net/test/read.cgi/tech/1048698321/996
MFCはAppWizard(exe)でSDKはWin32Applicationのことでしょ?
僕はSDKの時ANSI-Cでできるのはそれでやってしまう。新しく覚えるの
めんどくさいので。SDKだとあかんと言うのが分からないス。
猫の ttp://www.kumei.ne.jp/c_lang/sdk/sdk_05.htm
sprintf ttp://www.google.co.jp/search?q=cache:ompCcSA48HcC:www.asahi-net.or.jp/~qn6o-mrtm/ds2new/dev/info/sdk_comp.htm+SDK%E3%80%80%E6%95%B0%E5%80%A4%E3%80%80%E8%A1%A8%E7%A4%BA&hl=ja&ie=UTF-8
0012デフォルトの名無しさん
NGNG0013デフォルトの名無しさん
NGNGcase WM_CLOSE:
if (MessageBox(hWnd,"","",MB_OKCANCEL) == IDOK) DestroyWindow (hWnd);
break;
と書いたのですが、キャンセルしてもウインドウが破棄されてプログラムが終了してしまいます。
なぜなのでしょう?
0014デフォルトの名無しさん
NGNG曰く「ダイナミックリンクライブラリMSVCR71D.dllが指定された
パスhogeに見つかりませんでした。」だそうです。
dllを入れるかVC6でコンパイルしなおすしかないんでしょうか。
できればexeだけで配布したいんですが。
0015デフォルトの名無しさん
NGNG無理だろ。
0016_
NGNG( ・∀・)/< こんなのみつけたっち♪
http://www.hiroyuki.zansu.com/hankaku/jaz03.html
http://hiroyuki.zansu.com/hankaku/jaz10.html
http://www.hiroyuki.zansu.com/hankaku/jaz08.html
http://hiroyuki.zansu.com/hankaku/jaz09.html
http://www.hiroyuki.zansu.com/hankaku/jaz06.html
http://hiroyuki.zansu.com/hankaku/jaz05.html
http://www.hiroyuki.zansu.com/hankaku/jaz01.html
http://hiroyuki.zansu.com/hankaku/jaz02.html
http://www.hiroyuki.zansu.com/hankaku/jaz07.html
http://hiroyuki.zansu.com/hankaku/jaz04.html
0017デフォルトの名無しさん
NGNG諦めてVC6.0にします。ありがとうございますた。
0018デフォルトの名無しさん
NGNGsprintfじゃなくて
wsprintfにしたら、計算した値がウィンドウにでたあああああ!!!
でも、なんでsprintfだどエラーなんだ
BCC5.5
LRESULT CALLBACK WinProc(HWND hwnd, UINT msg,WPARAM wP, LPARAM lP)
{
HDC hdc;
int i=10,j=20,x;char str[256];
x=i+j;
wsprintf(str,"%d",x);
PAINTSTRUCT ps;
switch(msg){
case WM_PAINT:
hdc=BeginPaint(hwnd,&ps);
TextOut(hdc,100,100,str,strlen(str));
EndPaint(hwnd,&ps);
break;
0019デフォルトの名無しさん
NGNG同時(2個以上)押され場合に、
すべてのキーコードを取得する方法を、
教えて頂けますでしょうか。
よろしくお願いします。
0020デフォルトの名無しさん
NGNG0021デフォルトの名無しさん
NGNGかなり無理があるね。
0022デフォルトの名無しさん
NGNGexeを配布する時はReleaseビルドで配布するんだぞ。
0023デフォルトの名無しさん
NGNG「スタティックライブラリでMFCを使用する」でいけない?
0024名無し@沢村
NGNGヌヒよ、breakをreturnに置き換えてみたらどうだ。
0025デフォルトの名無しさん
NGNGReadConsoleInput、PeekConsoleInput等でキーコードは得れる。
しかし、2つ得るなどの細かい指定は自作する必要がありそう。
0026デフォルトの名無しさん
NGNG質問なのですが、VCのコードエディタのコンテキストメニューで
「定義にジャンプ」ってあるのですが、「実装にジャンプ」する
ような機能はないのでしょうか?
002713
NGNGIDCANCEL時にreturn 0;とすることで大丈夫でした。
break;した先にreturn (DefWindowProc (hWnd, msg, wParam, lParam));が
あったせいなんですね。どうも有難うございました。
002825
NGNG+-を50ミリ秒以内で連続で押すと音が鳴る。擬似同時押し。
LRESULT CALLBACK WndProc(HWND hWnd,UINT msg,WPARAM wParam,LPARAM lParam)
{
static long bT=0;//beforeTime
switch(msg)
{
case WM_CHAR:
if(wParam=='+'||wParam=='-')
if(bT>=GetTickCount()-50) Beep(0,0);
else bT=GetTickCount();
break;
}
0029デフォルトの名無しさん
NGNGTranslateMessageが呼ばれる前(PreTranslateMessage)に WM_KEYDOWN
捕まえて GetKeyboardState() でいけるんではないか。
>>25 なんというか、すげー。
すこし根本的なことを質問させてください。
必要にかられてWINで動くプログラムを作ろうと思い、この板のあちこちの初心者
スレを見ていたのですが、まず気づいたのはプログラム言語と言っても色々あると
いうことです。
猫でも分かる〜というHPに行ったのですが
・C#
・C言語
・C++
の3つがあがっていたし、他に
・ビジュアルベーシック
というのもあるのですよね。
で、質問です。いったい上の4つは何がどう違うのでしょうか?
初心者が始めるにはどれが一番よいのでしょうか?
教えてください。
0032デフォルトの名無しさん
NGNGわざわざポインタにして->しないとダメなんですか??
0033デフォルトの名無しさん
NGNGここで聞きなおしたほうがよいかと
***すれ立てるまでもない質問はここで 第36刷***
http://pc2.2ch.net/test/read.cgi/tech/1051370263/
ありがとう。
そうします。
0035デフォルトの名無しさん
NGNG思ったのですが使い方が・・・
初心者なものでアドバイスをお願いします。
003626
NGNGおながいします。m(__)m
0037デフォルトの名無しさん
NGNGスルーしたわけではないのですが、分からないんです。デバックも使ったこと
無いですし。
0039デフォルトの名無しさん
NGNG「参照にジャンプ」すると宣言に。
0040デフォルトの名無しさん
NGNGジャンプする場合の2通りがある。どういう規則なんだろ??
MFCのメンバなんかは必ず宣言にジャンプするよね。
0041デフォルトの名無しさん
NGNGあ、そうなんですか?
初心者でMFCしか追ってないもので...
個人的には定義にジャンプでhファイルのクラス内の宣言に飛んで
実装にジャンプでcppファイルの実装に飛んで欲しいのですが。
004226
NGNGダイアログがでることがありますが、「全然あいまいちゃうやん」
っていう時ないですか?
全然継承もしていないクラスの同名の関数が出てきたり...
004340
NGNGそれはまぁ目をつむるとして(w
MFCのソースを手軽にブラウズできないもんかな。ブレークポイントかけてステッ
プインするか、MFC\SRCをgrepしている現状。VS6使ってるけど .NETもなの?
0044デフォルトの名無しさん
NGNGマクロ使えば?
004540
NGNG『MFC : MFC ブラウザ データベース ファイルの使い方』に『MFC.BSC は、セット
アップ プログラムではインストールされないが、セットうpCDから \VC98\MFC\Src\
にコピーすれば、開いて使うことができる』とあるじゃん。早速コピー。
なんかワークスペースを開く度に、いちいち MFC.BSCを手動で開かんといけないみ
たいだが、MFCソースのブラウズでキタ―――(゚∀゚)―――!!!!!
よーし、MFC.BSCを勝手に開くマクロ組んじゃうぞー
0046デフォルトの名無しさん
NGNG言語仕様を読んでるわけじゃないけど、キミが「定義」と
思ってるものが「宣言」で、「実装」と言ってるものが「定義」
なのかもしれない。
004739
NGNG定義と宣言をごっちゃにすんなよ、とC++の入門書にはよく書いてあるが・・・。
0048デフォルトの名無しさん
NGNGこの文ですでにごっちゃになってる気が・・・
0050デフォルトの名無しさん
NGNGってプロジェクトとか設定するのかな?
プラットフォームがWin32しか選べない…DOS/V機じゃ無理なのかな?
0051デフォルトの名無しさん
NGNG0052デフォルトの名無しさん
NGNG0053デフォルトの名無しさん
NGNGプロジェクトを作成した場合のexeファイルのアイコンの変え方を教えていただけないでしょうか?
「空のプロジェクト」からの作成でしたらできたのですが、上記のやりかたでは
アプリケーションのアイコン、バージョン情報のアイコンだけしか変えられませんでした。
exeファイルのアイコンに使われるらしい ファイル名.ico をいじっても無駄でしたし、
それをいじるとicoファイル自体おかしくなってしまいます。
どなたかご教授お願いいたします。
0054デフォルトの名無しさん
NGNG描画更新する場合、2つ以上のスレッドでInvalidateRectを呼び出したりするとまずいですか?
0055デフォルトの名無しさん
NGNG画像を表示したいのですが、
ある画素のRGB値を配列に格納して
それを表示する関数を作っています。
その画素を座標(x,y)に表示したいので
pDC->SetPixel( x, y, RGB(Red, Green, Blue) );
と記述しました。Red,Green,Blueは画素(x,y)の
RGB値です。
しかし、このように記述しても黒でしか現れず、困っています。
Red,Green,Blueにはちゃんと値は入っています。
なぜ表示できないのでしょうか?
0056デフォルトの名無しさん
NGNGなっていました。つまり、どれかボタンを押すと
どれかはチェックが外れるということです。
それからこのラジオボタンでの種類を増やしたくて
さらにラジオボタンを増やしました。合計9個にしました。
これを全て排他的にしたいのですが、なぜか新しく作った
3つのラジオボタンと以前に作ったラジオボタンに同時に
チェックが入ってしまいます。
過去ログを見ましたがグループにすればいいと思っていますが、
プロパティのグループにチェックを入れても何もなりません。
いったいどうすれば全て排他的になるのでしょうか?
0057デフォルトの名無しさん
NGNGぐっ…VCでは、諦めますか…
いまさらTurbo C++でもやりますか…(苦笑
それとも、無料でなんかあるかな?
レスサンクス!
>>53
そのプロジェクトに「新規作成」「ファイル」タブの「リソース スクリプト」を追加。
VC++内の左のタブ「ClassView」「FileView」に「ResourceView」が追加されたはず。
ResourceViewタブを開くと内部にディレクトリらしきものがあるはずなので、マウスで
右クリックして、メニューを開き「挿入」。
「リソースの挿入」というタイトルが現れるので「インポート」で使いたいアイコンを選択。
最後に「ビルド」で構築すると、上で選択したアイコンがexeのアイコンになっているはず。
0058デフォルトの名無しさん
NGNG参考になるか分からんし、説明しにくいので勝手に判断してくれ。
Radio1 <- グループチェック有り
Radio2 <- グループチェック無し
Radio3 <- グループチェック有り
Radio4 <- グループチェック無し
Radio5 <- グループチェック無し
とすると、1-2、3-5のグループになる。
例えば「1と3」とか「2と5」は両方選べるが、「3と4」または「3と5」は排他。
つまり、グループの「最初」となるラジオボタンにグループにチェックを入れる。
俺は、面倒臭いのでSDKでマニュアルのラジオボタン作ってコード上で切り替えちまうが。
0059デフォルトの名無しさん
NGNGすまん。>>57 の追加。
これVC++6.0のやり方だったは…。.NETで出来るか知らない。
0060デフォルトの名無しさん
NGNG更新がうまくいきません。
void
CMyDialog::OnPaint()
{
CPaintDC dc(this);
DrawImage(dc);
}
こうすると、タブコントロールで上書きされてイメージが見えない、
void
CMyDialog::OnPaint()
{
CPaintDC dc(m_TabCtrl);
DrawImage(dc);
}
こうすると、更新を繰り返して、しばらくすると落ちる。
こんな感じで、なやんでいます。
こういう場合の常套手段というのは何かあるんでしょうか?
0061デフォルトの名無しさん
NGNGMFCは得意じゃないって言うか、SDKなので使ってないのだが…
なので資料そのまま書きます。
// ダイアログクラスのコンストラクタ
CFooDialog::CFooDialog( CWnd* pParent /*=NULL*/ )
: CDialog( CFooDialog::IDD, pParent )
{
// スタティック用ブラシを作成
m_brStatic.CreateSolidBrush( RGB( 0, 255, 0 ) );
}
////////////////////////////////////////////////////////////////////
// クラスウィザードより追加された WM_CTLCOLOR ハンドラ
HBRUSH CFooDialog::OnCtlColor( CDC* pDC, CWnd* pWnd, UINT nCtlColor )
{
if( nCtlColor == CTLCOLOR_STATIC ) // スタティックコントロールの場合
{
// ここで全てのスタティックコントロールについて
// 同じ背景を指定するので pWnd の区別をしない
return m_brStatic;
// m_brStatic はあらかじめ作成された CBrush
// オブジェクト
}
return CDialog::OnCtlColor( pDC, pWnd, nCtlColor );
}
by:「VC++によるWin32プログラミングTips」技術評論社
0062デフォルトの名無しさん
NGNGありがとうございます!できました!見事に排他的になりました!
具体的な例だったので非常にわかりやすかったです
でも確かにこれはめんどくさいというかタブオーダーを使う必要がありますね。
58さんはSDKでやるとおっしゃいましたがどういう方法でやっているのでしょうか?
SDKというのもあまりというかほとんどわからないのですがこれからのためにも
勉強しようと思いまして。
具体的に教えていただけるとありがたいです。
0063デフォルトの名無しさん
NGNGMFC:MFCAppWizard(exe) VBとSDKの間
SDK:Win32Application Win32Api、ANSI-C等を組み合わせて自作する。
0064デフォルトの名無しさん
NGNGできないとかいうエラーが出ました。マニュアルにNTでコンパイル
するときは
Ignore linker errors: "unresolved external symbol __imp__MessageBoxA@16".
と書かれていたのですが、どうやってリンカのエラーを無視してやれば
いいのでしょうか。
0065JBoy17031968
NGNG機能上できるか否かこちらで質問させて頂きたいと思い書込み致します。
質問の内容はVisualC++でメモリを分ける方法、あるアドレスはRAM領域
として、またある領域はROM領域としてメモリアクセスする方法なのですが
何処かでそのようなメモリの設定が出来ましたでしょうか。
使用しているOSはWindows2000Pro、VCは6.0を使用しております。
また、べたべたのCなのでMFCやAPIは使用していません。
以上です。
0066デフォルトの名無しさん
NGNGエラーが出ます。
#include <windows.h>
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nShowCmd)
{
return 0;
}
エラー
LIBCD.lib(crt0.obj) : error LNK2001: 外部シンボル "_main" は未解決です
だれか教えてください。
0067動画直リン
NGNG0068デフォルトの名無しさん
NGNGおかげで全く実行出来ません。警告を無視する方法って無いですか?
警告レベルを無しにしても実行出来ないし。
0069デフォルトの名無しさん
NGNGそんなはずは無い。Win32ApplicationはWinMainが無いと未解決という
メッセージが出て、Win32ConsoleApplicationはmainが無いと未解決と
いうメッセージが出る。プロジェクト制作時に前者と後者を間違えたの
では無いですか?
0070デフォルトの名無しさん
NGNGコンソールアプリの設定でビルドしたとか
自分はそれに気づかないで
なんでだああ
と1日悩む
0071デフォルトの名無しさん
NGNG0072JBoy17031968
NGNG設定を変えたらアクセスできました
お騒がせ致しました。
0073デフォルトの名無しさん
NGNGありがとうございます。その通りのミスでした
0074デフォルトの名無しさん
NGNG警告だけなのに実行できないの?
エラーが混じってない?
007568
NGNGリリースだと、インライン関数が一度も使われませんでした。
とか意味不明な関数のエラーが百個位でる(警告レベル4の場合)
0077デフォルトの名無しさん
NGNG右クリックでメニューが出てくるのですが、
このメニューに機能追加ってできますか?
007858
NGNG出来る。(つーか実現できないことはほとんどない気がするが)
>>62
SDK自体は、>>63氏が語ってくれた通りです。
ラジオボタンをマニュアルで作成すると、コードで全て動きを記述しなければなりません。
コード量が増しますが、”そういう”ラジオボタンの管理が非常に楽になります。
動きそのものを記述しなければなりませんが、オートでは実現できない不可思議な動きも作り出せます。
0079デフォルトの名無しさん
NGNGみつからないです・・・。
0080デフォルトの名無しさん
NGNG0081デフォルトの名無しさん
NGNGクラス名::メソッド名 と書いてあるところにカーソルを持っていくと、指のマークになって
クリックするとURLと勘違いしたのか、file::クラス名 なんていうファイルはありませんと
言ってきます。
激しくうざいのでこの機能を切りたいのですが、メニューのどこにあるのかわかりません。
教えてくださると幸いです。
0082デフォルトの名無しさん
NGNG.NETはスレちがい
0083デフォルトの名無しさん
NGNG画面上に表示されてるメニューの座標を取得する
方法は無いでしょうか?
0084デフォルトの名無しさん
NGNGhttp://ime.nu/ime.nu/www.net-de-dvd.com/
0086デフォルトの名無しさん
NGNG特定のファイルの名前を変える方法ってどうやるんでしょうか?
今、多数のファイルをある規則に従ってリネームするプログラムを
作ろうと考えています。
0087デフォルトの名無しさん
NGNG0088名無し@沢村
NGNGMoveFile()
0089デフォルトの名無しさん
NGNGお前はすれ違い。
0090デフォルトの名無しさん
NGNG0091デフォルトの名無しさん
NGNG>82
0092デフォルトの名無しさん
NGNG009386
NGNGMoveFileを検索したところ、どうしても元になっているクラスが
見つかりません。しかもMSDNで見れないところがあるし。。。
借りた物だからMSDNを再インストールできないし。。。
すみません。MoveFileは何のクラスのメンバか教えていただけないでしょうか?
m(__)m
0094デフォルトの名無しさん
NGNGhttp://www.google.com/search?num=50&lr=lang_ja&q=movefile()
なぜ検索しない?
0096デフォルトの名無しさん
NGNG0097デフォルトの名無しさん
NGNGabnormalprogramtermination と表示されOKするとそのアプリが強制終了になってしまします。
そのときは OK しかクリックできません。
0098デフォルトの名無しさん
NGNGそれで?
0099デフォルトの名無しさん
NGNG0100デフォルトの名無しさん
NGNGそのとほり!
何で借りたものをコピーしなかったのだ?
0101デフォルトの名無しさん
NGNGツマラソ
■ このスレッドは過去ログ倉庫に格納されています