Koło informatyczne - biblioteka wxWidgets

Co to jest wxWidgets?

Krótko mówiąc, jest to biblioteka klas C++, które umożliwiają w prosty sposób (no, powiedzmy, że we względnie prosty w porównaniu ze sposobem Bila Gates'a zastosowanym w MS Windows) programowanie aplikacji okienkowych w środowisku Windows, Linux i MacOS. Biblioteka wxWidgets korzysta z elementów graficznych środowiska, w którym jest tworzony program. Dzięki temu będzie on wyglądał tak samo jak inne programy działające w tym środowisku. Zaleta takiego systemu jest oczywista - program możemy szybko przenieś na inną platformę bez konieczności gruntownego przerabiania.

Bibliotekę wxWidgets przystosujemy do pracy z środowiskiem Code::Blocks, ponieważ jest ono dostępne zarówno w Windows jak i w Linux'ie.

 

Instalacja wxWidgets dla Code::Blocks w Windows

Najpierw musisz zainstalować środowisko Code::Blocks, jeśli jeszcze tego nie zrobiłeś. Program instalacyjny pobierzesz ze strony:

 

http://www.codeblocks.org/downloads/binaries

 

Pobierz wersję instalatora z kompilatorem MingW, którą zaznaczyliśmy czerwoną linią (ewentualnie tę drugą poniżej, jeśli nie posiadasz praw administratora na komputerze, na którym to środowisko będziesz chciał zainstalować). Program pobierasz klikając obok w link BerliOS lub Sourceforge.net. Po załadowaniu uruchom instalator i zainstaluj Code::Blocks na swoim dysku twardym. Standardowo program zostanie zainstalowany w katalogu:

 

C:\Program Files\CodeBlocks

 

lub

 

C:\Program Files (x86)\CodeBlocks

 

dla Windows 64-bitowych.

 

Gdy Code::Blocks zostanie zainstalowane i będzie działało (aby to sprawdzić, utwórz w nim i uruchom przykładową aplikację konsoli), musisz dodać do zmiennej środowiskowej Path ścieżkę do katalogu kompilatora MingW. Dla standardowej instalacji ścieżka ta ma postać:

 

C:\Program Files\CodeBlocks\MinGW\bin   lub    C:\Program Files (x86)\CodeBlocks\MinGW\bin

 

Jeśli zainstalowałeś Code::Blocks w innym miejscu, to będziesz musiał oczywiście użyć swojej ścieżki. W każdym razie końcówka powinna brzmieć:  ...\CodeBlocks\MinGW\bin. Ścieżka dostępu do katalogu bin jest potrzebna po to, aby można było bezpośrednio używać narzędzi kompilatora MingW z wiersza poleceń. Procedura dodania ścieżki jest następująca:

  1. Uruchom Panel Sterowania.
  2. Wybierz i uruchom applet System.
  3. Wybierz opcję Zaawansowane Ustawienia Systemu (w twojej wersji Windows może to być zakładka Zaawansowane).
  4. W okienku dialogowym kliknij na przycisk Zmienne Środowiskowe.
  5. W sekcji Zmienne Systemowe wyszukaj zmienną o nazwie Path, zaznacz ją myszką i kliknij na Edytuj.
  6. Na początku dopisz odpowiednią ścieżkę do kompilatora MingW zakończoną średnikiem, czyli np. C:\Program Files\CodeBlocks\MinGW\bin;
  7. Zatwierdź zmiany klikając na przyciski OK w kolejno odsłanianych oknach dialogowych i zamknij applet System.

Aby sprawdzić, czy ścieżka została poprawnie dodana do zmiennej Path, uruchom okno konsoli (naciśnij klawisz z okienkiem + R, wpisz cmd i naciśnij klawisz Enter), a następnie wpisz w nim polecenie:

 

gcc -v

 

Jeśli wszystko jest w porządku, to w oknie konsoli pojawi się tekst podobny do poniższego:

 

Microsoft Windows [Version 6.2.9200]
(c) 2012 Microsoft Corporation. Wszelkie prawa zastrzeżone.

C:\Users\Jerzy>gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=c:/program files (x86)/codeblocks/mingw/bin/../libexec/gcc/m
ingw32/4.7.1/lto-wrapper.exe
Target: mingw32
Configured with: ../../src/gcc-4.7.1/configure --build=mingw32 --enable-language
s=c,c++,ada,fortran,objc,obj-c++ --enable-threads=win32 --enable-libgomp --enabl
e-lto --enable-fully-dynamic-string --enable-libstdcxx-debug --enable-version-sp
ecific-runtime-libs --with-gnu-ld --disable-nls --disable-win32-registry --disab
le-symvers --disable-build-poststage1-with-cxx --disable-werror --prefix=/mingw3
2tdm --with-local-prefix=/mingw32tdm --enable-cxx-flags='-fno-function-sections
-fno-data-sections' --with-pkgversion=tdm-1 --enable-sjlj-exceptions --with-bugu
rl=http://tdm-gcc.tdragon.net/bugs
Thread model: win32
gcc version 4.7.1 (tdm-1)

C:\Users\Jerzy>

 

Jeśli otrzymasz błąd z informacją o niemożności znalezienia gcc, to znaczy, że nie dodałeś do zmiennej Path prawidłowej ścieżki. Musisz zatem powtórzyć procedurę i poprawić ewentualny błąd w ścieżce.

 

W kolejnym kroku zainstalujemy bibliotekę wxWidgets. W tym celu przejdź do strony:

 

http://www.wxwidgets.org/downloads/

 

 

i kliknij na wxMSW, jak wskazano na powyższym obrazku. Będziemy korzystali z wersji 2.8.12 biblioteki wxWidgets. Wersja 2.9.5 jest w fazie testów i może zawierać jeszcze błędy. Dla nas w zupełności wystarczy ta starsza.

Po kliknięciu we wskazany link przejdziesz na stronę sourceforge, gdzie rozpocznie się proces ładowania. Gdy ładowanie się zakończy, będziesz posiadał na swoim dysku instalator plików źródłowych biblioteki. Jest to plik o nazwie wxMSW-2.8.12-Setup.exe. Biblioteka wxWidgets jest rozpowszechniana w postaci plików źródłowych, które każdy użytkownik musi sobie skompilować (są również dostępne gotowe kompilacje, ale lepiej zrobić to samemu).

Uruchom instalator. Na ekranie pojawi się seria okien dialogowych:

 

      

 

Witaj w instalatorze wxWidgets

 

Zainstaluje on bibliotekę wxWidgets 2.8.12 na twoim komputerze.

Zaleca się zamknięcie wszystkich aplikacji przed uruchomieniem instalacji.

Kliknij na Next, aby kontynuować, lub na Cancel, aby zakończyć pracę instalatora.

   

Umowa Licencyjna

Proszę przeczytać poniższe, ważne informację przed uruchomieniem instalacji.

 

Proszę przeczytać poniższą Umowę Licencyjną. Musisz zgodzić się na warunki tej umowy, zanim rozpoczniesz proces instalacji.

 

 

[    Treść umowy licencyjnej    ]

 

 

 

(o) Akceptuję umowę
(  ) Nie akceptuję umowy

   

Informacja

Proszę przeczytać poniższe, ważne informację przed uruchomieniem instalacji.

 

Gdy będziesz gotowy na rozpoczęcie instalacji, kliknij na Next.

 

[    ...    ]

   

Wybierz Miejsce Docelowe

Gdzie należy zainstalować wxWidgets?

 

Instalator zainstaluje wxWidgets w następującym katalogu.

 

Aby kontynuować, kliknij na Next. Jeśli chcesz wybrać inny katalog, kliknij na Browse.

[C:\wxWidgets-2.8.12    ] (proponuję nie zmieniać tego katalogu)

 

 

 

 

 

Będzie potrzebne co najmniej 130.4 MB wolnego miejsca na dysku.

   

Gotowe do Instalacji

Instalator jest teraz gotowy do rozpoczęcia instalacji wxWidgets na twoim komputerze.

 

Kliknij na Install, aby kontynuować instalację, lub kliknij na Back, jeśli chcesz przeglądnąć lub zmienić ustawienia.

Miejsce docelowe:
    C:\wxWidgets-2.8.12

   

Instalowanie

Proszę poczekać, aż instalator zainstaluje wxWidgets na twoim komputerze.

 

Wydobywanie plików...

 

[        ]

   

Informacja

Proszę przeczytać poniższe, ważne informację przed zakończeniem instalacji.

 

Gdy będziesz gotowy, aby pójść dalej, kliknij na Next.

[    ...    ]

   

 

Kończenie pracy instalatora wxWidgets

 

Instalator zakończył instalację wxWidgets na twoim komputerze. Aplikację tę można uruchomić przez wybranie zainstalowanych ikon.

Kliknij na Finish, aby wyjść z instalatora.

 

W wyniku tej instalacji otrzymasz katalog C:\wxWidgets-2.8.12 na swoim dysku twardym (jeśli zainstalowałeś bibliotekę w innym miejscu, to będziesz musiał odpowiednio zmodyfikować podane dalej ścieżki). Katalog ten zawiera wszystkie pliki źródłowe biblioteki. Aby można było z niej korzystać w Code::Blocks, musimy ją skompilować za pomocą kompilatora MingW – to właśnie w tym celu dodawaliśmy ścieżkę dostępu do kompilatora do zmiennej środowiskowej Path. Procedura kompilacji jest następująca:

  1. Naciśnij klawisz z okienkiem + R, wpisz cmd i naciśnij Enter. Na ekranie powinno pojawić się okno konsoli.
  2. Wpisz:  cd /D C:\wxWidgets-2.8.12\build\msw
  3. Wpisz: mingw32-make -f makefile.gcc clean
  4. Wpisz:  mingw32-make -f makefile.gcc BUILD=debug SHARED=0 MONOLITHIC=1 UNICODE=1
  5. Wpisz: mingw32-make -f makefile.gcc BUILD=release SHARED=0 MONOLITHIC=1 UNICODE=1

Kroki 3, 4 i 5 mogą się wykonywać dosyć długo, jeśli masz wolny komputer – bądź raczej cierpliwy. Opcje kompilacji są następujące:

BUILD=release – określa wersję biblioteki. Wersja release nie zawiera danych dla Debugera i jest znacznie krótsza.

SHARED=0 – pliki biblioteczne będą dołączane bezpośrednio do programu wynikowego. Będzie tworzony pojedynczy plik EXE, który w sobie będzie zawierał wszystko, co jest potrzebne. Wersja z SHARED=1 tworzy bibliotekę dynamiczną dll, która jest wykorzystywana w czasie działania programu. W tym przypadku program jest dosyć krótki, jednakże sama biblioteka ma ponad 16MB i należy ją dostarczać wraz z programem. Z tej opcji nie będziemy korzystać.

MONOLITHIC=1 – wszystko będzie w jednym pliku bibliotecznym, zamiast w wielu plikach.

UNICODE=1 – biblioteka będzie stosowała kodowanie znaków Unicode, co jest standardem w Windows.

 

Gdy proces kompilacji się zakończy, otrzymasz wszystkie niezbędne pliki do tworzenia aplikacji z biblioteką wxWidgets. Procedura tworzenia projektu wxWidgets w Code::Blocks jest następująca:

 

   

Uruchom Code::Blocks. Na ekranie startowym kliknij w Create a new project.

  W oknie dialogowym wyszukaj i wybierz wxWidgets project, po czym kliknij na Go.
   

 

Witaj w instalatorze nowego projektu dla wxWidgets 2.6.x / 2.8.x / 2.9.x (SVN)!

Ten instalator pomoże ci utworzyć nowy projekt wykorzystujący międzyplatformową bibliotekę GUI wxWidgets.

Gdy będziesz gotowy, aby kontynuować, proszę kliknąć na "Next"...

[  ] Następnym razem pomiń tę stronę

   

 

Wybrierz wersję wxWidgets, która ma być używana.

 

Dokonaj wyboru.

[   ] (wybierz wxWidgets 2.8.x, bo taką wersję zainstalowaliśmy)

 

 

 

 

 

 

 

 

 

 

 

Kliknij na Next

   

 

Wybrierz nazwę projektu oraz katalog, w którym ma on powstać.

Tytuł projektu:
[  ...  ] (ja projekty po prostu numeruję kolejnymi liczbami)

Katalog, w którym powstanie projekt:

[  ...  ] (przygotuj wcześniej odpowiednie miejsce na dysku)

Nazwa pliku projektu:

[  ...  ] (zwykle taka sama jak tytuł projektu)

Wynikowa nazwa pliku:

[  ...  ]

 

 

 

 

 

 

Kliknij na Next

 

   

 

Wprowadź szczegóły projektu. Zostaną one użyte w komentarzach plików źródłowych projektu.

Autor:

Adres e-mail autora:

Strona WWW autora:

 

Uwaga: pól tych nie masz obowiązku wypełniać.

 

 

 

 

 

 

 

 

Kliknij na Next

   

 

Wybierz swój ulubiony program do budowy interfejsu graficznego.

Można również wybrać rodzaj aplikacji, która ma zostać utworzona w twoim projekcie.

Preferowany konstruktor interfejsu graficznego

(o) Żaden
(  ) wxSmith
(  ) wxFormBuilder

 

Rodzaj aplikacji

(  ) oparta na oknach dialogowych
(o) oparta na oknie głównym

 

 

 

 

 

Kliknij na Next

   

 

Wybierz położenie biblioteki wxWidgets na swoim komputerze.
Jest to katalog najwyższego poziomu, do którego została rozpakowana biblioteka wxWidgets. Katalog ten musi zawierać podkatalogi "include" oraz "lib".

Położenie wxWidgets:
[  C:\wxWidgets-2.8.12  ] (lub inny, jeśli zmieniłeś coś w instalacji)

 

 

 

 

 

 

 

 

 

 

Kliknij na Next

   

Wybierz kompilator do użycia oraz konfiguracje, które mają być aktywne w twoim projekcie.

 

Kompilator:
[GNU GCC Compiler ] (nie zmieniaj tego)

[X] Utwórz konfigurację "Debug": [Debug  ] (nie zmieniaj tego)

Opcje dla "Debug"
Katalog wyjściowy:                  [bin\Debug\  ] (nie zmieniaj tego)
Katalog dla plików pośrednich:  [obj\Debug\  ] (nie zmieniaj tego)

 

[X] Utwórz konfigurację "Release": [Release  ] (nie zmieniaj tego)

Opcje dla "Release"
Katalog wyjściowy:                  [bin\Release\  ] (nie zmieniaj tego)
Katalog dla plików pośrednich:  [obj\Release\  ] (nie zmieniaj tego)

 

 

 

Kliknij na Next

   

Wybierz różne opcje konfiguracyjne.

To, co tutaj wybierasz, musi się zgadzać z ustawieniami zainstalowanej biblioteki wxWidgets.

 

Ustawienia biblioteki wxWidgets

[  ] Używaj biblioteki dynamicznej wxWidgets (puste)

[X] wsWidgets zbudowane jako biblioteka jednorodna (wybrane)

[X] Włącz Unicode (wybrane)

 

Różne ustawienia

[  ] Utwórz pusty projekt

[  ] Utwórz i używaj prekompilowane nagłówki (PCH)

Konfiguracja: [    ]

[X] Skonfiguruj opcje zaawansowane (wybrane)

 

 

Kliknij na Next

   

Wybierz opcje zaawansowane. Niektóre z nich będą działały tylko z GCC.

 

Nie zmieniaj ich, chyba że będziesz musiał.

Niektóre z ustawień muszą być zmienione ręcznie.

 

Zaawansowane opcje (tylko GCC)

[  ] używaj bibliotek WXDEBUG i Debug wxWidgets (puste)

Wersja docelowa Debug
(  ) Aplikacja trybu konsoli
(o) Aplikacja trybu interfejsu graficznego

Wersja docelowa Release
(  ) Aplikacja trybu konsoli
(o) Aplikacja trybu interfejsu graficznego

 

 

 

Kliknij na Finish

 

Po tych działaniach powstaje szablonowy projekt wxWidgets:

 

 

Skompiluj go i uruchom. Jeśli otrzymasz poniższe okno:

 

 

to znaczy, że środowisko zostało odpowiednio skonfigurowane do pracy z biblioteką wxWidgets i jesteś gotowy do ćwiczeń. Jeśli w swoich programach będziesz chciał używać polskich znaków, to uruchom z menu opcję: Settings → Editor i przejdź na zakładkę Other settings. Tutaj ustaw opcje jak pokazano poniżej:

 

 



List do administratora Serwisu Edukacyjnego Nauczycieli I LO

Twój email: (jeśli chcesz otrzymać odpowiedź)
Temat:
Uwaga: ← tutaj wpisz wyraz  ilo , inaczej list zostanie zignorowany

Poniżej wpisz swoje uwagi lub pytania dotyczące tego rozdziału (max. 2048 znaków).

Liczba znaków do wykorzystania: 2048

 

W związku z dużą liczbą listów do naszego serwisu edukacyjnego nie będziemy udzielać odpowiedzi na prośby rozwiązywania zadań, pisania programów zaliczeniowych, przesyłania materiałów czy też tłumaczenia zagadnień szeroko opisywanych w podręcznikach.



   I Liceum Ogólnokształcące   
im. Kazimierza Brodzińskiego
w Tarnowie

©2017 mgr Jerzy Wałaszek

Dokument ten rozpowszechniany jest zgodnie z zasadami licencji
GNU Free Documentation License.