Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Для новичков > win32 окно из консольного окна


Автор: Lin07 10.4.2009, 14:18
Код

LRESULT CALLBACK WndProc(HWND hwnd, UINT Message, WPARAM wparam,LPARAM lparam)
{
    if (Message == WM_DESTROY )
    {
        PostQuitMessage(0);
        return 0;
    }
    return DefWindowProc(hwnd,Message,wparam,lparam);
}

int main(int argc, _TCHAR* argv[])
{
    // GetModuleHandle(NULL) насколько я понял возвращает HINSTANCE консольного окна.

    HINSTANCE hInstance  = ? ;


    HWND hwnd;
    MSG msg;
    WNDCLASS w;
    memset(&w,0,sizeof(WNDCLASS));
    w.style = CS_HREDRAW | CS_VREDRAW;
    w.lpfnWndProc = WndProc;
    w.hInstance = hInstance;
//    w.hbrBackground = GetStockBrush(WHITE_BRUSH);
    w.lpszClassName = L"C Windows";
    RegisterClass(&w);
    hwnd = CreateWindow(L"C Windows",L"C Windows", WS_OVERLAPPEDWINDOW,
        10,10,600,480,NULL,NULL,hInstance,NULL);
    ShowWindow(hwnd,NULL);
    UpdateWindow(hwnd);
    while(GetMessage(&msg,NULL,0,0))
    {
        TranslateMessage(&msg);
        DispatchMessage(&msg);
    }
    return msg.wParam;
}


как создать окно из консольного? вин32 нужен для графиков... консоль для расчетов... спс

Автор: Andrey44 10.4.2009, 14:45
Цитата(Lin07 @  10.4.2009,  14:18 Найти цитируемый пост)
GetModuleHandle(NULL) насколько я понял возвращает HINSTANCE консольного окна.

А вам что нужно? Это-же HINSTANCE вашего приложения

Автор: Lin07 10.4.2009, 15:00
мне нужно новое окно...поправьте плиз... ибо даже с этой функциией,  не создает его!

вроде нигде не ошибся

Автор: Lin07 10.4.2009, 16:43
ShowWindow(hwnd,SW_SHOW);

вопрос закрыт!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)