000
05.10.2005, 22:03 Uhr
mischa
Fragender
|
ich habe erst vor kurzem mit winapi angefangen also kenne ich mich da nicht so gut aus ich habe ein beispiel aus einem tutorial in meinen devc++ kopiert aber der gibt mir eine warnung und ich habe keine ahnung was das soll ich arbeite unter windows [Linker error] undefined reference to `GetTextMetricsA@8' [Linker error] undefined reference to `TextOutA@20' [Linker error] undefined reference to `GetStockObject@4'
C++: |
#include <windows.h>
LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM);
int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow) { static char szAppName[] = "HalloWelt"; HWND hwnd; MSG msg; WNDCLASS wndclass; wndclass.style = CS_HREDRAW | CS_VREDRAW; wndclass.lpfnWndProc = WndProc; wndclass.cbClsExtra = 0; wndclass.cbWndExtra = 0; wndclass.hInstance = hInstance; wndclass.hIcon = LoadIcon(NULL, IDI_APPLICATION); wndclass.hCursor = LoadCursor(NULL, IDC_ARROW); wndclass.hbrBackground = (HBRUSH) GetStockObject (WHITE_BRUSH); wndclass.lpszMenuName = NULL; wndclass.lpszClassName = szAppName; RegisterClass(&wndclass); hwnd = CreateWindow( szAppName, // Klassenzugehörigkeit "Das erste Fenster", // Titelzeile WS_OVERLAPPEDWINDOW, // Fensterart CW_USEDEFAULT, // x-Wert der oberen linken Ecke CW_USEDEFAULT, // y-Wert der oberen linken Ecke CW_USEDEFAULT, // Breite des Fensters CW_USEDEFAULT, // Höhe des Fensters NULL, // Kinderfenster? NULL, // Menühandle hInstance, // Handle zur Instanz NULL ); // Parameter zur Weitergabe an WM_PAINT ShowWindow(hwnd, iCmdShow); UpdateWindow(hwnd); while (GetMessage(&msg, NULL, 0, 0)) { TranslateMessage(&msg); DispatchMessage(&msg); } return msg.wParam; }
LRESULT CALLBACK WndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) { HDC hdc; PAINTSTRUCT ps; static int cxChar, cyChar, cxCaps; TEXTMETRIC tm; switch(message) { case WM_CREATE: hdc = GetDC(hwnd); GetTextMetrics (hdc, &tm); cxChar = tm.tmAveCharWidth; cyChar = tm.tmHeight + tm.tmExternalLeading; cxCaps = (tm.tmPitchAndFamily & 1 ? 3 : 2) * cxChar / 2; ReleaseDC(hwnd, hdc); return 0; case WM_PAINT: hdc = BeginPaint(hwnd, &ps); TextOut(hdc, 5*cxChar, 2*cyChar, "Hallo Windows-Welt !", 20); EndPaint(hwnd, &ps); return 0; case WM_DESTROY: PostQuitMessage(0); return 0; } return DefWindowProc (hwnd, message, wParam, lParam); }
|
-- Latein Unterricht ist die spätere Rache der Römer an den Germanen. |