Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?
Opracował: Piotr DejaVu Szawdyński
Biblioteki C/C++

TextOut

[funkcja] Wypisuje łańcuch znaków na określonej pozycji.

Składnia

C/C++
#include <windows.h>

BOOL TextOut(
HDC hdc,
int nXStart,
int nYStart,
LPCTSTR lpString,
int cbString
);

Opis szczegółowy

Funkcja służy do wypisywania tekstu na określonej pozycji. Tekst jest wypisywany na urządzeniu wskazanym poprzez argument hdc. Funkcja wykorzystuje obecnie wybraną czcionkę, kolor tła oraz kolor tekstu.

Argumenty

ArgumentOpis
HDC hdcUchwyt do kontekstu urządzenia.
int nXStartWspółrzędna x (kolumna) - określa pozycję wyświetlenia tekstu.
int nYStartWspółrzędna y (wiersz) - określa pozycję wyświetlenia tekstu.
LPCTSTR lpStringWskaźnik na łańcuch znaków, który ma zostać wypisany. Łańcuch nie musi być zakończony znakiem terminalnym, ponieważ długość łańcucha znaków określa się za pomocą argumentu cbString.
int cbStringDługość łańcucha znaków przekazanego poprzez argument lpString.

Zwracana wartość

Funkcja zwraca wartość różną od zera gdy operacja została wykonana pomyślnie.

W przypadku wystąpienia błędu funkcja zwraca wartość 0.

Dodatkowe informacje

Więcej informacji na temat funkcji TextOut można znaleźć pod adresem http://msdn.microsoft.com​/en-us/library​/dd145133(v=VS.85).aspx.

Przykład

Przykładowa aplikacja korzystająca z funkcji TextOut.
C/C++
#include <windows.h>

LRESULT CALLBACK WindowProcedure( HWND, UINT, WPARAM, LPARAM );

char szClassName[] = "WindowsApp";
HDC kon;
PAINTSTRUCT ps;

int WINAPI WinMain( HINSTANCE hThisInstance,
HINSTANCE hPrevInstance,
LPSTR lpszArgument,
int nFunsterStil )

{
    HWND hwnd;
    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;
   
    if( !RegisterClassEx( & wincl ) )
         return 0;
   
    hwnd = CreateWindowEx(
    0,
    szClassName,
    "Przykladowa Aplikacja",
    WS_OVERLAPPEDWINDOW,
    CW_USEDEFAULT,
    CW_USEDEFAULT,
    200,
    200,
    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_PAINT:
        kon = BeginPaint( hwnd, & ps );
       
        //Tutaj ta funkcja:
        TextOut( kon, 50, 50, "Jakis tekst", 11 );
       
        EndPaint( hwnd, & ps );
        break;
        default:
        return DefWindowProc( hwnd, message, wParam, lParam );
    }
    return 0;
}

Linki zewnętrzne