Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

Попрос по C++

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Компилируемые языки] >> Попрос по C++
Имя
Сообщение << Старые топики   Новые топики >>
Попрос по C++ - 2007-11-16 00:15:28.533333   
Useroff

Сообщений: 193
Оценки: 0
Присоединился: 2007-11-09 03:44:58.030000
привет!!
вот тут у меня скриптик застави есть….
как сделать так чтобы заставка во весь экран была???
&nbsp;#include &lt;windows.h&gt; #include &lt;gl/gl.h&gt; &nbsp; LRESULT CALLBACK WndProc (HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam); void EnableOpenGL (HWND hWnd, HDC *hDC, HGLRC *hRC); void DisableOpenGL (HWND hWnd, HDC hDC, HGLRC hRC); &nbsp; int WINAPI WinMain (HINSTANCE hInstance, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; HINSTANCE hPrevInstance, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; LPSTR lpCmdLine, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int iCmdShow) { &nbsp;&nbsp;&nbsp; WNDCLASS wc; &nbsp;&nbsp;&nbsp; HWND hWnd; &nbsp;&nbsp;&nbsp; HDC hDC; &nbsp;&nbsp;&nbsp; HGLRC hRC;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; MSG msg; &nbsp;&nbsp;&nbsp; BOOL bQuit = FALSE; &nbsp;&nbsp;&nbsp; float theta = 0.0f; &nbsp;&nbsp;&nbsp; /* register window class */ &nbsp;&nbsp;&nbsp; wc.style = CS_OWNDC; &nbsp;&nbsp;&nbsp; wc.lpfnWndProc = WndProc; &nbsp;&nbsp;&nbsp; wc.cbClsExtra = 0; &nbsp;&nbsp;&nbsp; wc.cbWndExtra = 0; &nbsp;&nbsp;&nbsp; wc.hInstance = hInstance; &nbsp;&nbsp;&nbsp; wc.hIcon = LoadIcon (NULL, IDI_APPLICATION); &nbsp;&nbsp;&nbsp; wc.hCursor = LoadCursor (NULL, IDC_ARROW); &nbsp;&nbsp;&nbsp; wc.hbrBackground = (HBRUSH) GetStockObject (BLACK_BRUSH); &nbsp;&nbsp;&nbsp; wc.lpszMenuName = NULL; &nbsp;&nbsp;&nbsp; wc.lpszClassName = "GLSample"; &nbsp;&nbsp;&nbsp; RegisterClass (&amp;wc); &nbsp;&nbsp;&nbsp; /* create main window */ &nbsp;&nbsp;&nbsp; hWnd = CreateWindow ( &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "GLSample", "OpenGL Sample", &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; WS_CAPTION | WS_POPUPWINDOW | WS_VISIBLE, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0, 0, 256, 256, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; NULL, NULL, hInstance, NULL); &nbsp;&nbsp;&nbsp; /* enable OpenGL for the window */ &nbsp;&nbsp;&nbsp; EnableOpenGL (hWnd, &amp;hDC, &amp;hRC); &nbsp;&nbsp;&nbsp; /* program main loop */ &nbsp;&nbsp;&nbsp; while (!bQuit) &nbsp;&nbsp;&nbsp; { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /* check for messages */ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (PeekMessage (&amp;msg, NULL, 0, 0, PM_REMOVE)) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /* handle or dispatch messages */ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (msg.message == WM_QUIT) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bQuit = TRUE; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TranslateMessage (&amp;msg); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DispatchMessage (&amp;msg); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /* OpenGL animation code goes here */ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; glClearColor (0.0f, 0.0f, 0.0f, 0.0f); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; glClear (GL_COLOR_BUFFER_BIT); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; glPushMatrix (); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; glRotatef (theta, 0.0f, 0.0f, 1.0f); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; glBegin (GL_TRIANGLES); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; glColor3f (1.0f, 0.0f, 0.0f);&nbsp;&nbsp; glVertex2f (0.0f, 1.0f); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; glColor3f (0.0f, 1.0f, 0.0f);&nbsp;&nbsp; glVertex2f (0.87f, -0.5f); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; glColor3f (0.0f, 0.0f, 1.0f);&nbsp;&nbsp; glVertex2f (-0.87f, -0.5f); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; glEnd (); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; glPopMatrix (); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SwapBuffers (hDC); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; theta += 1.0f; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sleep (1); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } &nbsp;&nbsp;&nbsp; } &nbsp;&nbsp;&nbsp; /* shutdown OpenGL */ &nbsp;&nbsp;&nbsp; DisableOpenGL (hWnd, hDC, hRC); &nbsp;&nbsp;&nbsp; /* destroy the window explicitly */ &nbsp;&nbsp;&nbsp; DestroyWindow (hWnd); &nbsp;&nbsp;&nbsp; return msg.wParam; } &nbsp; LRESULT CALLBACK WndProc (HWND hWnd, UINT message, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; WPARAM wParam, LPARAM lParam) { &nbsp;&nbsp;&nbsp; switch (message) &nbsp;&nbsp;&nbsp; { &nbsp;&nbsp;&nbsp; case WM_CREATE: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return 0; &nbsp;&nbsp;&nbsp; case WM_CLOSE: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PostQuitMessage (0); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return 0; &nbsp;&nbsp;&nbsp; case WM_DESTROY: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return 0; &nbsp;&nbsp;&nbsp; case WM_KEYDOWN: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; switch (wParam) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; case VK_ESCAPE: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PostQuitMessage(0); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return 0; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return 0; &nbsp;&nbsp;&nbsp; default: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return DefWindowProc (hWnd, message, wParam, lParam); &nbsp;&nbsp;&nbsp; } } &nbsp; void EnableOpenGL (HWND hWnd, HDC *hDC, HGLRC *hRC) { &nbsp;&nbsp;&nbsp; PIXELFORMATDESCRIPTOR pfd; &nbsp;&nbsp;&nbsp; int iFormat; &nbsp;&nbsp;&nbsp; /* get the device context (DC) */ &nbsp;&nbsp;&nbsp; *hDC = GetDC (hWnd); &nbsp;&nbsp;&nbsp; /* set the pixel format for the DC */ &nbsp;&nbsp;&nbsp; ZeroMemory (&amp;pfd, sizeof (pfd)); &nbsp;&nbsp;&nbsp; pfd.nSize = sizeof (pfd); &nbsp;&nbsp;&nbsp; pfd.nVersion = 1; &nbsp;&nbsp;&nbsp; pfd.dwFlags = PFD_DRAW_TO_WINDOW | &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PFD_SUPPORT_OPENGL | PFD_DOUBLEBUFFER; &nbsp;&nbsp;&nbsp; pfd.iPixelType = PFD_TYPE_RGBA; &nbsp;&nbsp;&nbsp; pfd.cColorBits = 24; &nbsp;&nbsp;&nbsp; pfd.cDepthBits = 16; &nbsp;&nbsp;&nbsp; pfd.iLayerType = PFD_MAIN_PLANE; &nbsp;&nbsp;&nbsp; iFormat = ChoosePixelFormat (*hDC, &amp;pfd); &nbsp;&nbsp;&nbsp; SetPixelFormat (*hDC, iFormat, &amp;pfd); &nbsp;&nbsp;&nbsp; /* create and enable the render context (RC) */ &nbsp;&nbsp;&nbsp; *hRC = wglCreateContext( *hDC ); &nbsp;&nbsp;&nbsp; wglMakeCurrent( *hDC, *hRC ); } &nbsp; void DisableOpenGL (HWND hWnd, HDC hDC, HGLRC hRC) { &nbsp;&nbsp;&nbsp; wglMakeCurrent (NULL, NULL); &nbsp;&nbsp;&nbsp; wglDeleteContext (hRC); &nbsp;&nbsp;&nbsp; ReleaseDC (hWnd, hDC); }
Post #: 1
RE: Попрос по C++ - 2007-11-16 00:41:01.156666   
Jasmin

Сообщений: 2320
Оценки: 0
Присоединился: 2007-05-03 23:08:53.390000
Не хочу подсказывать….
Post #: 2
RE: Попрос по C++ - 2007-11-16 04:24:52.710000   
JD_WERT

Сообщений: 117
Оценки: 0
Присоединился: 2007-07-12 06:59:16.613333
quote:

Не хочу подсказывать….

Да ладно, он комментарии на английском пишет, WinAPI и glAPI знает:), так что можно чуть-чуть подсказать

hWnd = CreateWindow (
"GLSample", "OpenGL Sample",
WS_POPUP | WS_VISIBLE | WS_MAXIMIZE,
0, 0, 256, 256,
NULL, NULL, hInstance, NULL);
Post #: 3
RE: Попрос по C++ - 2007-11-17 11:40:01.320000   
Jasmin

Сообщений: 2320
Оценки: 0
Присоединился: 2007-05-03 23:08:53.390000
Не думаю что он сам это написал…
Post #: 4
RE: Попрос по C++ - 2007-11-17 16:26:47.783333   
CABOK

Сообщений: 11
Оценки: 0
Присоединился: 2007-03-14 12:25:41.170000
посмотри тут http://msdn2.microsoft.com/en-us/library/ms724385.aspx
Post #: 5
RE: Попрос по C++ - 2007-11-28 00:09:09.230000   
kosolapov

Сообщений: 37
Оценки: 0
Присоединился: 2007-07-21 05:40:00.330000
#include <GL/glut.h>
 
 
 

int main(int argc, char **argv) {
glutInit(&amp;argc, argv);
glutInitDisplayMode(GLUT_DOUBLE|GLUT_DEPTH|GLUT_RGB|GLUT_STENCIL);
glutInitWindowSize(Width, Height); //width, gheight - вычисляй максимальные, указываешь размеры окна..
//glutInitWindowPosition(200, 200);
glutCreateWindow("Picture =)");
Inint();

glutMainLoop();
return 0;
}
Post #: 6
Страниц:  [1]
Все форумы >> [Компилируемые языки] >> Попрос по C++







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.