Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?
Autor: Pietrzuch
Biblioteki C++

Wyświetlanie tekstu w danej części ekranu

[lekcja] Rozdział 6. Pobieranie pozycji kursora i jego przesuwanie oraz wyświetlanie tekstu na określonej pozycji.

Program wyświetlający tekst na środku konsoli - kod

Teraz nauczymy się, jak wyświetlać tekst w innym miejscu ekranu, wybranym przez nas.

Rozpoczniemy od kodu:

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


//zmienne
int kolumny = 0;
int rzedy = 0;
char tekst[] = "Wyswietlany tekst!";


int main()
{
    //start   
    initscr();
   
    //Pobieranie wartości okna do zmiennych
    getmaxyx( stdscr, rzedy, kolumny ); //1
   
   
    //wyswietlanie tekstu
    mvprintw( rzedy / 2,( kolumny / 2 ) -( sizeof( tekst ) / 2 ), tekst ); //2
    getch();
    endwin();
}

Opis funkcji

W sumie to kod jest prosty i być może rozumiesz to bez tłumaczenia, ale na wszelki wypadek oczywiście je podam. :)

1. Funkcja getmaxyx() pobiera właściwości okna stdscr, a dokładniej jego wysokość i szerokość. Te informacje są zapisane odpowiednio do zmiennej rzedy oraz kolumny.

2. Funkcja mvprintw() wyświetla podany tekst w ostatnim parametrze, w odpowiednim miejscu (y,x) konsoli.
Uwaga! Zostawia ona wskaźnik zaraz za ostatnią literą wyświetlanego tekstu dalej. Oznacza to, że użyta funkcja getch() pracująca w trybie echo() za funkcją mvprintw() wyświetli podany znak z klawiatury zaraz za ukazanym tekstem.

Jak przesuwać sam wskaźnik?

Do przesuwania samego wskaźnika w konsoli używamy funkcji move(). W pierwszym jej parametrze podajemy oś y(pionowo), a w drugim oś x(poziomo) do których ma trafić wskaźnik konsoli.

Zakończenie

To jest już koniec tej lekcji, niestety powoli też zbliżamy się do końca kursu. Jeżeli chcesz dokładniej poznać tą bibliotekę zapraszam do poszukania kursów w języku angielskim. Zanim jednak to zrobisz przeczytaj jeszcze następną lekcję oraz podsumowanie, w którym szybko i łatwo znajdziesz funkcje poznane czytając ten kurs.
Poprzedni dokument Następny dokument
Wyświetlanie sprite'ów Definiowanie sceny 3D