|
저는 C BuilderX 유저가 아니라서, Show 라는 펑션이 따로 있는지 없는지는 잘 알지
못합니다. 그래서 물어봤었는데, Show 라는 메소드는 따로 있는것 같지는 않네요.
다른 곳에서 선언이 되어 있는 메소드 같고, 어떠한 역할을 하지는지는 잘 모르겠지만
SetMapMode, ShowWindow, TextOut 와 비슷한 역할을 하는 것 같고, 이 부분을
잘 살펴보셔서 컨버팅 하시면 될 것 같습니다.
cuperido
No, and that's exactly the problem - it is not a function at all until
it is defined somewhere.
You need to include a definition for the Show function or it cannot be
used. I am not sure what you are trying to do with it. Maybe you
should look at the winapi functions SetMapMode, ShowWindow and TextOut
as it appears that you are trying to combine all three in this
function.
If you copied this code from a book or from another program, you need
to include the Show function to make it work.
- Leo
초야 님이 쓰신 글 :
: 문제의 부분(빌더x로 컴파일)
:
: Show(hwnd, hdc, 1, 3, MM_TEXT, TEXT("TEXT(pixels)")); // call to undefined function "Show"
:
: 흠 이유을 몰겠씸-아시는 분은 알려주세요 대체 함수라던지 + _+ 정의가 안 됀 함수라니 막막 그 자체
:
: 문제의 소스
: #include <windows.h>
:
: LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);
:
: int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance, PSTR szCmdLine,int iCmdShow)
: {
: static TCHAR szAppName[] = TEXT("WhatSize");
: HWND hwnd;
: MSG msg;
: WNDCLASS wndclass;
:
: wndclass.style = CS_VREDRAW | CS_HREDRAW;
: 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;
:
: if(!RegisterClass(&wndclass))
: {
: MessageBox(NULL,TEXT("This Program required Window NT"),szAppName,MB_ICONERROR);
: return 0;
: }
:
: hwnd = CreateWindow(szAppName,TEXT("What Size is the Window?"),WS_OVERLAPPEDWINDOW,
: CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,
: NULL,NULL,hInstance,NULL);
:
: 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)
: {
: static TCHAR szHeading[] =
: TEXT("Mapping Mode Left Rigth Top Bottom");
: static TCHAR szUndLine[] =
: TEXT("------------ ---- ----- --- ------");
: static int cxChar,cyChar;
: HDC hdc;
: PAINTSTRUCT ps;
: TEXTMETRIC tm;
:
: switch(message)
: {
: case WM_CREATE:
: hdc = GetDC(hwnd);
: SelectObject(hdc,GetStockObject(SYSTEM_FIXED_FONT));
:
: GetTextMetrics(hdc,&tm);
: cxChar = tm.tmAveCharWidth;
: cyChar = tm.tmHeight + tm.tmExternalLeading;
:
: ReleaseDC(hwnd,hdc);
: return 0;
: case WM_PAINT:
: hdc = BeginPaint(hwnd,&ps);
: SelectObject(hdc,GetStockObject(SYSTEM_FIXED_FONT));
:
: SetMapMode(hdc,MM_ANISOTROPIC);
: SetWindowExtEx(hdc,1,1,NULL);
: SetViewportExtEx(hdc,cxChar,cyChar,NULL);
:
: TextOut(hdc, 1, 1, szHeading, lstrlen(szHeading));
: TextOut(hdc, 1, 2, szUndLine, lstrlen(szUndLine));
:
: Show(hwnd, hdc, 1, 3, MM_TEXT, TEXT("TEXT(pixels)"));
: Show(hwnd, hdc, 1, 4, MM_LOMETRIC, TEXT("LOMETRIC(.1 mm)"));
: Show(hwnd, hdc, 1, 5, MM_HIMETRIC, TEXT("HIMETRIC(.01 mm)"));
: Show(hwnd, hdc, 1, 6, MM_LOENGLISH,TEXT("LOENGLISH(.01 in)"));
: Show(hwnd, hdc, 1, 7, MM_HIENGLISH,TEXT("HIENGLISH(.001 in)"));
: Show(hwnd, hdc, 1, 8, MM_TWIPS, TEXT("TWIPS(1/1440 in)"));
:
: EndPaint(hwnd,&ps);
: return 0;
: case WM_DESTROY:
: PostQuitMessage(0);
: return 0;
: }
: return DefWindowProc(hwnd,message,wParam,lParam);
: }
:
|