Перейти к содержанию

Eless Или Кто То


Рекомендуемые сообщения

Ем...Скиньте пожалуйста подробный урок или обьясните как вставить картинку в оконную апликацию в С++ Win32 ! Помогите!

Вот сама оконная апликация, надо сделать крестики нолики(НО мне надо токо знать как картинку сюда вставить, мож потом ещё что то спрошу ^105^ ) Плз если можно детально опишите и выделите что куда вы вставляли !!

#include <windows.h>

HPEN hPen;

HWND hWnd;

LOGPEN lp; //кисть серый;

#define IDB_BUTTON1 100

#define IDB_BUTTON2 101

#define IDB_BUTTON3 102

LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);

HINSTANCE hInst;

HDC hdc;

PAINTSTRUCT ps;

RECT rt;

//--------------серый фон кисть

HBRUSH hBrush;

LOGBRUSH lb;

void NewBrushDraw(void){

lb.lbColor = RGB(100,100,100);

lb.lbStyle = BS_SOLID;

hBrush = CreateBrushIndirect(&lb);

SelectObject(hdc,hBrush);

Rectangle(hdc, 0, 0, 130, 800);

Rectangle(hdc, 0, 0, 800, 5);

DeleteObject(hBrush);}

//------------------------

int WINAPI WinMain(HINSTANCE instance, HINSTANCE , PSTR , int show) {

static TCHAR appName[] = TEXT("MinApplication");

hInst = instance;

WNDCLASS wndclass;

wndclass.style = CS_HREDRAW | CS_VREDRAW;

wndclass.lpfnWndProc = WndProc;

wndclass.cbClsExtra = 0;

wndclass.cbWndExtra = 0;

wndclass.hInstance = instance;

wndclass.hIcon = LoadIcon(NULL, IDI_EXCLAMATION);

wndclass.hCursor = LoadCursor(NULL, IDC_ARROW);

wndclass.hbrBackground = (HBRUSH) GetStockObject(WHITE_BRUSH );

wndclass.lpszMenuName = NULL;

wndclass.lpszClassName = appName;

if (!RegisterClass(&wndclass)) {

MessageBox(NULL, TEXT("Oh no, Mr. Bill...."), appName, MB_ICONERROR);

return 0;

}

//-------------------------------окно----------------

HWND hwnd = CreateWindowEx(

WS_EX_APPWINDOW, appName, TEXT("Browser's fight"),

WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_MINIMIZEBOX,

140, 80, 450, 400,

0, // the parent window identifier

0, // the menu identifier

hInst, // the application identifier

NULL);

//-----------------------------------------------------------

ShowWindow(hwnd, show);

UpdateWindow(hwnd);

hdc = BeginPaint(hwnd, &ps);

//-----------------------кнопки---------------------------

CreateWindow("button", "Fight",

WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON,

10, 20,

90, 30,

hwnd,

(HMENU) IDB_BUTTON1,

hInst, NULL);

CreateWindow("button", "About",

WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON,

10, 60,

90, 30,

hwnd,

(HMENU) IDB_BUTTON2,

hInst, NULL);

CreateWindow("button", "Exit",

WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON,

10, 100,

90, 30,

hwnd,

(HMENU) IDB_BUTTON3,

hInst, NULL);

//----------------------------------------------

MSG msg;

while (GetMessage(&msg, NULL, 0, 0)) {

TranslateMessage(&msg);

DispatchMessage(&msg);

}

return msg.wParam;

}

LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) {

switch (message) {

case WM_DESTROY :

PostQuitMessage(0);

return 0;

case WM_PAINT: hdc = BeginPaint(hwnd, &ps);

//вертикаль

MoveToEx(hdc,340,250,NULL);

LineTo(hdc, 340,80);

MoveToEx(hdc,300,250,NULL);

LineTo(hdc, 300,80);

//горизонталь

MoveToEx(hdc,240,140,NULL);

LineTo(hdc, 420,140);

MoveToEx(hdc,240,180,NULL);

LineTo(hdc, 420,180);

//-------------серый фон ------------

lp. lopnStyle = PS_SOLID;

lp. lopnWidth.x = 2;

lp. lopnColor = RGB(100,100,100);

hPen = CreatePenIndirect(&lp);

SelectObject(hdc, hPen);

NewBrushDraw();

DeleteObject(hPen);

break;

//---------------------------

}

return DefWindowProc(hwnd, message, wParam, lParam);

}

P.S ЗАРАНИЕ СПАСИБО

Ссылка на сообщение
Поделиться на другие сайты

Предлагаю создать на форуме специальный раздел для тем Арти, как рекордсмена по их созданию ^86^

Ссылка на сообщение
Поделиться на другие сайты

Предлагаю создать на форуме специальный раздел для тем Арти, как рекордсмена по их созданию ^86^

Так это и есть тот роздел Разное

Ссылка на сообщение
Поделиться на другие сайты

Арти, я с++ сто лет не юзал, вспомнить что-то конечно могу, но устал за день- как собака, завтра весь день буду занят, дальше скорее всего - тоже, так что врядли чем- то помогу... А на чем-то типа c# тебе нельзя это сделать? думаю было бы проще. А вообще - MSDN тебе в помощь, никто лучше не подскажет ;)

Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...