![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
No.1ベストアンサー
- 回答日時:
>この画像でしましまにしたいのですが
どの画像ですか?
単に白黒のしましま画像を表示するのであれば、
以下のプログラムが参考になりますか?
#include <windows.h>
#include <tchar.h>
#define PROGNAME_T("sample")// プログラム名
#define WCLASSNAME_T("CWindow")// ウインドウクラス名
#define WINDW640
#define WINDH480
LRESULT CALLBACK WndProc(HWND hwnd , UINT msg , WPARAM wp , LPARAM lp) {
HDC hdc;
PAINTSTRUCT ps;
int i;
switch (msg) {
case WM_DESTROY:
PostQuitMessage(0);
return 0;
case WM_PAINT:
//しましまを描画//////////////////////////////////
hdc = BeginPaint(hwnd , &ps);
for(i=0;i<WINDW;i+=2){
MoveToEx(hdc , i , 0 , NULL);
LineTo(hdc , i , WINDH);
}
EndPaint(hwnd , &ps);
return 0;
}
return DefWindowProc(hwnd , msg , wp , lp);
}
INT WINAPI WinMain(HINSTANCE hInst,HINSTANCE hPrevInst,LPSTR szStr,INT iCmdShow){
HWND hWnd=NULL;
MSG msg;
WNDCLASSEX wndclass;
static DWORD dwTime;
// ウインドウクラス設定
wndclass.cbSize= sizeof (wndclass) ;
wndclass.style = CS_HREDRAW | CS_VREDRAW ;
wndclass.lpfnWndProc = WndProc ;
wndclass.cbClsExtra = 0 ;
wndclass.cbWndExtra = 0 ;
wndclass.hInstance = hInst ;
wndclass.hIcon = LoadIcon (NULL, IDI_APPLICATION) ;
wndclass.hCursor = LoadCursor (NULL, IDC_ARROW) ;
wndclass.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);
wndclass.lpszMenuName= NULL ;
wndclass.lpszClassName= WCLASSNAME ;
wndclass.hIconSm = LoadIcon (NULL, IDI_APPLICATION) ;
RegisterClassEx (&wndclass) ;// ウインドウクラス登録
// ウインドウ生成
hWnd = CreateWindow(WCLASSNAME,//ウィンドウクラス名
PROGNAME,//ウィンドウ名
WS_OVERLAPPEDWINDOW,//ウインドウスタイルをオーバーラップウインドウに
CW_USEDEFAULT,//ウィンドウ表示位置x座標
CW_USEDEFAULT,//ウインドウ表示位置y座標
WINDW, WINDH,//ウインドウ幅、高さ
NULL, NULL, hInst, NULL);
// ウインドウ表示
ShowWindow (hWnd,SW_SHOW) ;
UpdateWindow (hWnd) ;
while(GetMessage(&msg , NULL , 0 , 0)) DispatchMessage(&msg);
return msg.wParam;
}
この回答への補足
すいません、出来てました!
for(i=0;i<WINDW;i+=2){
MoveToEx(hdc , i , 0 , NULL);
LineTo(hdc , i , WINDH);
}
のところを
for( int i = ps.rcPaint.left; i < ps.rcPaint.right; i = i + 10 ){
MoveToEx( hdc, i, ps.rcPaint.top, NULL );
LineTo( hdc, i, ps.rcPaint.bottom );
}
にしたらこの画像のような結果になってしまったのですが、何が違うのでしょうか?わかりやすい説明よろしくお願いします。
回答ありがとうございます。
>どの画像ですか?
何もしないというボタン付きウィンドウです。
そのとおりやってみましたが。
やはり他のウィンドウを重ねて右にずらして見ましたが、しましまに再描画されませんでした。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Word(ワード) ワード。オブジェクトの一部分にグラデーションを塗るには 2 1 2022/10/04 16:25
- その他(映画) 昔の映画の3Dリメイク版。どうやって作るのか? 4 2023/02/16 10:17
- HTML・CSS 画像が分割されて切り替わる、ループアニメーションが作りたい 7 2023/05/27 17:12
- ノートパソコン PCのshift+右クリックについて 2 2022/08/22 08:52
- HTML・CSS トリミングで表示した画像をクリックで元どおりにしたい 3 2022/12/16 18:49
- Excel(エクセル) ある数値に対して、値を返す数式についてです 2 2022/09/13 22:06
- Yahoo!メール ヤフーメールから送られてくる画像付きメールの画像が表示されません 3 2022/05/27 07:13
- 超常現象・オカルト 浴槽の中から一本の手首が... 5 2022/12/04 13:29
- PDF Windowsでパソコンの画面全部をスクリーンショットし長い画像になりました。 この画像をPDFにし 2 2022/10/21 12:12
- Excel(エクセル) ある文字を含む際に、値を返す数式についてです 5 2022/08/28 16:58
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
return文がない場合の戻り値は...
-
C#のswitch文を簡略化したいの...
-
Win32APIにて、ウィンドウ全体...
-
MoveToExとLineToについて
-
トラックのループの仕方
-
COMPORTマルチスレッドで例外発生
-
エラー Run-Time Check Failur...
-
Enterキーを押されたら次の処理...
-
2÷3などの余りについて
-
信頼区間の1.96や1.65ってどこ...
-
マイナスからプラスへ転じた時...
-
C言語での引数の省略方法
-
「指定されたキャストは有効で...
-
数字以外が入力されたらエラー...
-
CStringのFindで文字列検索を行...
-
DWORDの実際の型は何でしょうか
-
「Aに対するBの割合」と「Aに対...
-
【gcc・cygwin】multiple defin...
-
do-while文が禁止される理由
-
c languageで 簡単な質問があ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
音量調節
-
return文がない場合の戻り値は...
-
C#のswitch文を簡略化したいの...
-
ゲームとかの解像度変更&全画...
-
エラー Run-Time Check Failur...
-
コンソールアプリケーションの...
-
キャレットの現在位置の表示 (W...
-
エディットボックスの背景の色...
-
COMPORTマルチスレッドで例外発生
-
ツリーコントロールの開閉アイ...
-
C言語win32api、エディットボッ...
-
Win32APIにて、ウィンドウ全体...
-
Win32APIでウィンドウを中央に...
-
エディットコントロール入力時...
-
ダイアログプログラムでEnterキ...
-
不思議な現象が起こるプログラ...
-
Win32のファイルダイアログのサ...
-
C言語のswitch case文で、scanf...
-
WM_CREATE について
-
ボタンのアイコン表示
おすすめ情報