
Kid
Członkowie-
Postów
0 -
Dołączył
-
Ostatnio
Nigdy
Typ zawartości
Profile
Fora
Kalendarz
Articles
Pliki
Wszystko napisane przez Kid
-
Mam okienko: wincl.hInstance = hInst; wincl.lpszClassName = szClassName; wincl.lpfnWndProc = WinMainProc; wincl.style = CS_VREDRAW | CS_HREDRAW; wincl.cbSize = sizeof (WNDCLASSEX); wincl.hIcon = LoadIcon (hInst, "SERWER"); wincl.hIconSm = LoadIcon (hInst, "SERWER"); wincl.hCursor = LoadCursor (NULL, IDC_ARROW); wincl.lpszMenuName = NULL; wincl.cbClsExtra = 0; wincl.cbWndExtra = 0; wincl.hbrBackground = (HBRUSH) COLOR_BACKGROUND; if (!RegisterClassEx (&wincl)) return FALSE; hWinMain = CreateWindow (szClassName, "Serwer Metrona", WS_SYSMENU | WS_MINIMIZEBOX, CW_USEDEFAULT, CW_USEDEFAULT, width, height, HWND_DESKTOP, LoadMenu(hInst, MAKEINTRESOURCE(IDM_MAIN_MENU)), hInst, NULL); a do niego dodane menu ... w proceduże zdarzeń mam WM_COMMAND: ... IDM_SUBMENU: MessageBox (0, "text",text", MB_OK); break; Problem w tym że po wybraniu opcji z menu MessageBox się nie pojawia. Wyskakuje dopiero po wciśnięciu [ALT]-a lub po zamknięciu programu. Co jest nie tak? Może to mój NT znowu odstawia numery Pisze w DEV C++. Pozdrawiam.
-
Twardy a wiesz jak sprawić żeby po wpisaniu każdej linijki kursor znalazł się na końcu textu
-
Spoon dzięki za sprawdzenie u siebie? Gdy dzis sprawdzałem to też zadziałało, ale wczoraj były dwie kreseczki? Ale mnie to juz nie dziwi mam Win NT 4.0 i co i rusz są jakieś dziwne sytuacje>
-
próbowałem już: \n\r ; \r\n ; \x10\x13 ; \x13\x10 - pojawiają się dwie pionowe kreski \n ; \r ; \x10 ; \x13 - pojawia się jdna pionowa kreska char ENTER = 13 pojawia sie jedna pionowa kreska itd itp TO NIE DZIAŁA !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-
Mam okienko: hSKomunikat = CreateWindow ("edit", "",ES_MULTILINE WS_VSCROLL WS_VISIBLE WS_CHILD WS_BORDER , 0, 0, width - 7, height - 345, hWinMain, NULL, hInst, NULL ); i dodaje text: char cbufor[1000]; char text = "\n nowa linia" long int lWinText = GetWindowTextLength (hSKomunikat); char cBufor[lWinText + strlen (text)]; GetWindowText (hSKomunikat , cBufor, lWinText + 1); strcat (cBufor, text); SetWindowText (hwnd, cBufor); ale chcę żeby ten text był w nowej lini a dodanie "\n" wstawia mi pionową kreskę jak to zrobić?
-
Miałem Dev C++ ver 4.9.7 i projekt Open GL. Wszystko było ok. Ale zainstalowałem Dev C++ 4.9.8 i od tego momentu przy kompilacji w/w projektu wyskakuje błąd [Linker error] undefined reference to `__gxx_personality_v0' Co jest?
-
... albo jakiegoś DLL-ka z plikami nagłówkowymi ...
-
Macie jakiś przykład obsługi bazy danych MS Access przez C++ i API?
-
zaqmiast CDS_FULLSCREEN wstaw 0 i też będzie chodzić u mnie tak było bo to przykład z OpenGL-a
-
Kto mi przetłumaczy poniższy kod na C++ Public Tekstura() As Long Public Function LoadGLTexture(NazwaTex As String, KtoraTex As Byte) As Boolean 'Tutaj wczytujemy dany plik i konwertujemy na teksturę "zjadliwą" dla OpenGL Dim sFile As String Dim bmFile As BITMAPFILEHEADER Dim bmInfo As BITMAPINFOHEADER Dim bmRGB() As RGBQUAD Dim iFile As Integer Dim lImageSize As Long Dim iPixelSize As Integer Dim baImageData() As Byte 'Ustawiamy nazwę pliku sFile = App.Path & "\" & NazwaTex iFile = FreeFile Open sFile For Binary As iFile 'Odczytajmy nagłówek pliku Get #iFile, , bmFile Get #iFile, , bmInfo 'Zprawdźmy ilu kolorowa jest bitmapa If (bmInfo.biBitCount < 24) Then 'Mniej niż 24bity (16777215) koloruff, przypiszmy ten fakt do odpowiedniej zmiennej ReDim bmRGB(bmInfo.biClrUsed) 'Wczytajmy tablicę kolorów Get #iFile, , bmRGB End If 'Sprawdźmy jak duża jest nasza bitmapa iPixelSize = bmInfo.biBitCount / 8 lImageSize = bmInfo.biWidth * bmInfo.biHeight * iPixelSize ReDim baImageData(lImageSize) 'Wczytajmy dane (obraz) bitmapy Get #iFile, , baImageData Close #iFile 'Stwórzmy wskaźnik dla naszej tekstury ReDim Tekstura(KtoraTex) 'Zróbmy nieco miejsca w pamięci karty graficznej dla naszej tekstury glGenTextures 1, Tekstura(KtoraTex) 'Od teraz nasza bitmapa będzie nazywała się teksturą, przepiszmy dane z pamięci RAM do VRAM glBindTexture glTexture2D, Tekstura(KtoraTex) glTexParameteri glTexture2D, tpnTextureMagFilter, GL_LINEAR 'Wybieramy skalowanie metodą GL_LINEAR glTexParameteri glTexture2D, tpnTextureMinFilter, GL_LINEAR glTexImage2D glTexture2D, 0, 3, bmInfo.biWidth, bmInfo.biHeight, _ 0, tiBGRExt, GL_UNSIGNED_BYTE, baImageData(0) 'Super! Udało nam się stworzyć teksturę LoadGLTexture = True End Function
-
wszystkie komunikaty są wymienione w pliku winuser.h niestety bez opisu
-
Aby zmienić rozdzielczość: DEVMODE dm; memset (&dm, 0, sizeof (dm)); dm.dmSize = sizeof (dm); dm.dmPelsWidth = width; dm.dmPelsHeight = height; dm.dmBitsPerPel = bits; dm.dmFields = DM_BITSPERPEL | DM_PELSWIDTH | DM_PELSHEIGHT; ChangeDisplaySettings (&dm, CDS_FULLSCREEN); Gdzie 'width i height' to rozdzielczość 'bits' to ilość kolorów np. wartość 24 to: 24bity a nie 24 kolory Aby przywrócić oryginalne ustawienia: ChangeDisplaySettings (NULL, 0);
-
temat mówi sam za siebie Jest jakiś sposób na schowanie/pokazania kursora pod systemem Win NT?
-
Napisałem kod który jest poniżej. W momencie kiedy zminimalizuję okno pojawia się ikonka w Tray-u. (jest OK), ale w momencie kiedy przejadę myszką nad tą ikonką to automatycznie ona znika, zdarzenie WM_TRAY nie zachodzi, a przogram działa jakby nic się nie stało. co jest nie tak? może to przez to ze mam system win NT? #include <windows.h> # define WM_TRAY WM_USER+1 LRESULT CALLBACK WindowProcedure (HWND, UINT, WPARAM, LPARAM); char szClassName[ ] = "WindowsApp"; NOTIFYICONDATA nid; HWND hwnd, thwnd; int WINAPI WinMain (HINSTANCE hThisInstance, HINSTANCE hPrevInstance, LPSTR lpszArgument, int nFunsterStil) { MSG messages; WNDCLASSEX wincl; wincl.hInstance = hThisInstance; wincl.lpszClassName = szClassName; wincl.lpfnWndProc = WindowProcedure; wincl.style = CS_DBLCLKS; wincl.cbSize = sizeof (WNDCLASSEX); wincl.hIcon = LoadIcon (NULL, IDI_APPLICATION); wincl.hIconSm = LoadIcon (NULL, IDI_APPLICATION); wincl.hCursor = LoadCursor (NULL, IDC_ARROW); wincl.lpszMenuName = NULL; wincl.cbClsExtra = 0; wincl.cbWndExtra = 0; wincl.hbrBackground = (HBRUSH) COLOR_BACKGROUND; nid.cbSize = sizeof(NOTIFYICONDATA); nid.hWnd = hwnd; nid.uID = 1001; nid.uFlags = NIF_MESSAGE | NIF_ICON | NIF_TIP; nid.uCallbackMessage = WM_TRAY;; nid.hIcon = LoadIcon(NULL, IDI_APPLICATION); lstrcpyn(nid.szTip, szClassName, sizeof(nid.szTip)); if (!RegisterClassEx (&wincl)) return 0; hwnd = CreateWindow (szClassName, "Windows App", WS_OVERLAPPEDWINDOW, 0, 0, 640, 480, HWND_DESKTOP, NULL, hThisInstance, NULL ); ShowWindow (hwnd, nFunsterStil); while (GetMessage (&messages, NULL, 0, 0)) { TranslateMessage(&messages); DispatchMessage(&messages); } return messages.wParam; } LRESULT CALLBACK WindowProcedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) { switch (message) { case WM_DESTROY: PostQuitMessage (0); break; case WM_SIZE: if (LOWORD(wParam)==1) Shell_NotifyIcon(NIM_ADD, &nid); break; case WM_TRAY: MessageBox (NULL, "l","k", MB_OK); default: return DefWindowProc (hwnd, message, wParam, lParam); } return 0; }