-PR-
解決済み

初心者です。

  • 困ってます
  • 質問No.80147
  • 閲覧数37
  • ありがとう数6
  • 気になる数0
  • 回答数6
  • コメント数0

お礼率 69% (64/92)

VisualC++でWin32 Applicationで作るときの、
三行目にはなんと書くんですか?

--図--
#include <???.h>

ここの行です。
{
cout << "hello";
return 0;
}

知っている方教えてください。
通報する
  • 回答数6
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.6
レベル9

ベストアンサー率 30% (25/83)

早速実行した見たいですね。

>実行したとき白いすじのようなものが見えます。(文字の所)
>気になります。
それはまさに文字を書いている瞬間を目撃しているのです。

WinProcを次の関数に置き換えると「白いすじのようなもの」は無くなります。


LRESULT CALLBACK WndProc(HWND hWnd,UINT uiMessage,WPARAM wParam,LPARAM lParam)
{
PAINTSTRUCT ps;
HDC hDC;
switch(uiMessage)
{
case WM_PAINT:
hDC=BeginPaint(hWnd,&ps);
TextOut(hDC,
150/*X座標*/,
100/*Y座標*/,
"Hello!"/*表示する文字列*/,
6/*表示する文字数*/);
EndPaint(hWnd,&ps);
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hWnd,uiMessage,wParam,lParam);
};
return 0;
};
お礼コメント
Ginga

お礼率 69% (64/92)

確かに直ってますね。ありがとうございました。
投稿日時 - 2001-05-25 19:58:44
関連するQ&A
-PR-
-PR-

その他の回答 (全5件)

  • 回答No.1
レベル14

ベストアンサー率 50% (1122/2211)

int PASCAL WinMain( HINSTANCEhinstCurrent,/* 現在のインスタンスのハンドル */ HINSTANCEhinstPrevious,/* 以前のインスタンスのハンドル */ LPSTRlpszCmdLine,/* コマンド ラインのアドレス */ intnCmdShow/* 表示ウィンドウのタイプ (オープンまたはアイコン) */ ) という感じ。も ...続きを読む
int PASCAL WinMain(
HINSTANCEhinstCurrent,/* 現在のインスタンスのハンドル */
HINSTANCEhinstPrevious,/* 以前のインスタンスのハンドル */
LPSTRlpszCmdLine,/* コマンド ラインのアドレス */
intnCmdShow/* 表示ウィンドウのタイプ (オープンまたはアイコン) */
)

という感じ。もちろん、変数名は何でも良いし、コメントまで、
同じにする必要はないです。インクルードするのは windos.h 。

でも、質問にあるような内容のプログラムを書きたいのであれば、
Win32 Application ではなく、Console Application で書きましょう。
お礼コメント
Ginga

お礼率 69% (64/92)

ありがとうございました。
確かにこんなのはConsole Application
で作るべきだと思います。
(でもあれはとりあえず何か書こうとしただけです)
投稿日時 - 2001-05-23 21:47:45


  • 回答No.2
レベル9

ベストアンサー率 30% (25/83)

Win32 Applicationとは 他のWindows用のアプリケーションと同様に ウインドウを作成するプログラム環境です。 したがってWin32 Console Applicationみたいに 記述しただけでは簡単には動きません。 それでも、質問に対する回答としてしては #include<WINDOWS.H> int WINAPI WinMain(HINST ...続きを読む
Win32 Applicationとは
他のWindows用のアプリケーションと同様に
ウインドウを作成するプログラム環境です。

したがってWin32 Console Applicationみたいに
記述しただけでは簡単には動きません。

それでも、質問に対する回答としてしては

#include<WINDOWS.H>

int WINAPI WinMain(HINSTANCE hThis,HINSTANCE hPrev,LPSTR lpCmdLine,int nShowCmd)
{

という書き出しにはなります。

ただ、これだけではプログラムが動作するとは思えないので
質問を締め切らずにお待ちいただけるのであれば
動くプログラムを別回答でアップしようと思います。

それでは、またあとでお会いいたしましょう。
お礼コメント
Ginga

お礼率 69% (64/92)

確かにエラーが出ました。

>質問を締め切らずにお待ちいただけるのであれば
>動くプログラムを別回答でアップしようと思います。

お願いします。ありがとうございました。
投稿日時 - 2001-05-23 21:53:43
  • 回答No.3
レベル6

ベストアンサー率 14% (1/7)

期待しているのはこれでしょうか。 いろいろ足りないかと思いますが。 int PASCAL WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszCmdLine, int nCmdShow) ...続きを読む
期待しているのはこれでしょうか。
いろいろ足りないかと思いますが。

int PASCAL WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpszCmdLine, int nCmdShow)
お礼コメント
Ginga

お礼率 69% (64/92)

ありがとうございます。
でも、そこだけ変えてもだめみたいです。
投稿日時 - 2001-05-23 21:59:17
  • 回答No.4
レベル9

ベストアンサー率 30% (25/83)

xinman再びです。 たぶん、これくらい書かないと。 分からないところがたくさんあると思いますが これから勉強していきましょう。 教えて!gooもあるし… 以下プログラム #include<WINDOWS.H> LRESULT CALLBACK WndProc(HWND hWnd,UINT uiMessage,WPARAM wParam,LPARAM lPara ...続きを読む
xinman再びです。

たぶん、これくらい書かないと。
分からないところがたくさんあると思いますが
これから勉強していきましょう。
教えて!gooもあるし…

以下プログラム

#include<WINDOWS.H>

LRESULT CALLBACK WndProc(HWND hWnd,UINT uiMessage,WPARAM wParam,LPARAM lParam)
{
HDC hDC;
switch(uiMessage)
{
case WM_PAINT:
hDC=GetDC(hWnd);
TextOut(hDC,
150/*X座標*/,
100/*Y座標*/,
"Hello!"/*表示する文字列*/,
6/*表示する文字数*/);
ReleaseDC(hWnd,hDC);
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hWnd,uiMessage,wParam,lParam);
};
return 0;
};

int WINAPI WinMain(HINSTANCE hThis,HINSTANCE hPrev,LPSTR lpCmdLine,int nShowCmd)
{
LPSTR lpszName="TEST_WINDOW";
WNDCLASS wc;
wc.cbClsExtra=0;
wc.cbWndExtra=0;
wc.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);
wc.hCursor=LoadCursor(NULL,IDC_ARROW);
wc.hIcon=LoadIcon(NULL,IDI_APPLICATION);
wc.lpfnWndProc=WndProc;
wc.lpszClassName=lpszName;
wc.lpszMenuName=NULL;
wc.style=0;
wc.hInstance=hThis;

if(!RegisterClass(&wc))return 1;

HWND hWnd;
hWnd=CreateWindow(lpszName,
"WINDOW_TITLE"/*ウインドウのタイトル*/,
WS_OVERLAPPEDWINDOW|WS_VISIBLE,
0/*ウインドウの左端の座標*/,
0/*ウインドウの上端の座標*/,
400/*ウインドウの幅*/,
300/*ウインドウの高さ*/,
NULL,NULL,hThis,NULL);

if(!hWnd)return 2;

MSG msg;
while(GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
};

return msg.wParam;
};
お礼コメント
Ginga

お礼率 69% (64/92)

ご丁寧にどうも。
細かい事ですが、
実行したとき白いすじのようなものが見えます。(文字の所)
気になります。ありがとうございました。
投稿日時 - 2001-05-23 22:06:51
  • 回答No.5
レベル13

ベストアンサー率 37% (331/872)

こんにちは、honiyonです。  どちらかというと、そのプログラムはコンソールアプリケーションで、「void main()」の方が適切な気がします。  その分からない部分はプログラムではなく構文にあたりますね。 そのような場合ここで質問するより、教科書や参考書を読んだ方が圧倒的に早く理解できると思いますよ。実力もつきやすいと思います。  大きなお世話であれば申し訳ありません(.. ...続きを読む
こんにちは、honiyonです。
 どちらかというと、そのプログラムはコンソールアプリケーションで、「void main()」の方が適切な気がします。

 その分からない部分はプログラムではなく構文にあたりますね。 そのような場合ここで質問するより、教科書や参考書を読んだ方が圧倒的に早く理解できると思いますよ。実力もつきやすいと思います。

 大きなお世話であれば申し訳ありません(..
お礼コメント
Ginga

お礼率 69% (64/92)

ナルホドヒレハレ。ありがとうございました。
投稿日時 - 2001-05-25 19:56:59
このQ&Aのテーマ
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


新大学生・新社会人のパソコンの悩みを解決!

いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ