Руководство по программированию с wxWidgets (1. Вспомогательные классы wxWidgets).

Jan Bodnar, “1.The wxWidgets programming tutorial (wxWidgets helper classes)”, public translation into Russian from English More about this translation.

Translate into another language.

Вспомогательные классы wxWidgets.

wxWidgets содержит большую группу вспомогательных классов, облегчающих работу программистам. Есть классы для работы со строками, файлами, xml документами, потоками, базами данных и сетью. Здесь мы рассмотрим лишь крошечную капельку из этого огромного озера.

Библиотека wxWidgets может быть использована для создания как консольных, так и GUI приложений. В этой главе будет продемонстрировано использование некоторых вспомогательных классов в консольных приложениях.

Консоль.

Итак, напишем небольшую консольную программу, которая помещает некоторый текст в окно консоли. Внимание: в Unix/Linux нужно воспользоваться следующими операторами, чтобы скомпилировать программу:
g++ file_name.cpp -o hworld `wx-config --cxxflags --libs`.

console.cpp

#include <wx/string.h>

int main(int argc, char **argv)

{

wxPuts(wxT("A wxWidgets console application"));

}

Результат:

A wxWidgets console application

wxString

Это, вероятно, наиболее полезный класс. wxString — класс, отвечающий за отображение символьных строк.

В следующем примере мы определим три строки wxString. Затем мы объединим их в одну строку, используя операцию сложения.

addition.cpp

#include <wx/string.h>

int main(int argc, char **argv)

{

wxString str1 = wxT("Linux");

wxString str2 = wxT("Operating");

wxString str3 = wxT("System");

wxString str = str1 + wxT(" ") + str2 + wxT(" ") + str3;

wxPuts(str);

}

Результат:

Linux Operating System

Метод Printf() используется для форматирования строк.

formatted.cpp

#include <wx/string.h>

int main(int argc, char **argv)

{

int flowers = 21;

wxString str;

str.Printf(wxT("There are %d red roses."), flowers);

wxPuts(str);

}

Результат:

There are 21 red roses.

В следующем примере мы проверяем строку на наличие в ней другой строки. Для этого мы используем метод Contains().

contains.cpp

#include <wx/string.h>

int main(int argc, char **argv)

{

wxString str = wxT("The history of my life");

if (str.Contains(wxT("history"))) {

wxPuts(wxT("Contains!"));

}

if (!str.Contains(wxT("plain"))) {

wxPuts(wxT("Does not contain!"));

}

}

Результат:

Contains!

Does not contain!

Метод Len() возвращает количество символов в строке.

length.cpp

#include <wx/string.h>

int main(int argc, char **argv)

{

wxString str = wxT("The history of my life");

wxPrintf(wxT("The string has %d characters\n"), str.Len());

}

Результат:

The string has 22 characters

Методы MakeLower() и MakeUpper() преобразуют все символы строки в строчные и прописные соответственно.

cases.cpp

#include <wx/string.h>

int main(int argc, char **argv)

{

wxString str = wxT("The history of my life");

wxPuts(str.MakeLower());

wxPuts(str.MakeUpper());

}

Результат:

the history of my life

THE HISTORY OF MY LIFE

Вспомогательные функции.

wxWidgets содержит несколько удобных вспомогательных функций для выполнения системных команд, получения домашней директории пользователя или названия операционной системы.

В следующем примере мы выполним команду ls (только для Unix/Linux). Для этого нам понадобится функция wxShell().

shell.cpp

#include <wx/string.h>

#include <wx/utils.h>

int main(int argc, char **argv)

{

wxShell(wxT("ls-l"));

}

Результат:

total 40

-rwxr-xr-x 1 vronskij vronskij 9028 2007-09-06 22:10 basic

-rw-r--r-- 1 vronskij vronskij 95 2007-09-06 22:09 basic.cpp

-rw-r--r-- 1 vronskij vronskij 430 2007-09-06 00:07 basic.cpp~

-rwxr-xr-x 1 vronskij vronskij 11080 2007-09-05 23:17 console

-rw-r--r-- 1 vronskij vronskij 500 2007-09-05 23:17 console.cpp

-rw-r--r-- 1 vronskij vronskij 485 2007-09-05 23:16 console.cpp~

Далее мы получим домашнюю директорию пользователя, имя ОС, имя пользователя, имя хоста и общее количество свободной памяти.

system.cpp

#include <wx/string.h>

Pages: ← previous Ctrl next
1 2 3

Original (English): 1.The wxWidgets programming tutorial (wxWidgets helper classes)

Translation: © ber113, Alex .

translated.by crowd

Like this translation? Share it or bookmark!