I przyszedł czas na kolejną część kursu Qt. Dzisiaj o wykorzystaniu baz danych w swoich aplikacjach. Pokażę jak ustanawiać połączenie z bazą danych, wykonać na niej zapytania oraz kilka przydatnych sztuczek związanych z operowaniem na bazach. Miłego czytania!
kwi 17 2010
Kurs Qt – część 8 – OpenGL
Kolejna część kursu Qt. Dzisiaj trochę o OpenGL. Czemu tylko trochę? Niestety nie znam go zbyt dobrze (ot, tylko tyle, żeby sobie przy pomocy innych kursów coś narysować, ale i to nie zawsze mi wychodzi), więc jedyne co pokażę to jak wykorzystać odpowiedni komponent dostarczany wraz z Qt do renderowania prostych figur (a Ci którzy się na OpenGL znają zrobią z tego jakiś pożytek
).
mar 13 2010
Kurs Qt – część 7 – TCP
Z racji zaspania na dzisiejsze zajęcia (cała jedna godzina wykładu!) oraz pozwolenia używania na laborkach z wirtualnych zespołów roboczych (sponsorowanych przez prof. dr hab. inż. Bogdana Wiszniewskiego i dr inż. Jerzego Dembskiego) własnej technologii (czyli wcale nie trzeba pisać pod Windowsem w WinAPI (albo czymś takim), jednak robiąc przy okazji spory narzut godzinny na sklecenie własnego programu) macie możliwość poczytania jak wykorzystywać Qt do przesyłania danych przez sieć z wykorzystaniem protokołu TCP/IP. No… koniec tej wazeliny, czas wziąć się za coś bardziej efektywnego (i efektownego). Zrobimy prosty chat (nie, mój projekt na te laborki polegał na czymś innym).
lut 24 2010
Kurs Qt – Część 6 – Rysowanie
6. (z dużym opóźnieniem) część kursu Qt. Z racji, że ostatnio zostałem zmuszony do rysowania grafów itp. rzeczy (na szczęście można było wybrać technologię) to dziś przedstawię właśnie rysowanie (proste, nie grafów, za dużo nerwów mnie to kosztowało ;P) w Qt. Przy okazji mały pokaz jak zrobić menu kontekstowe
lis 27 2009
Kurs Qt – Część 5 – Layout
Kolejna część kursu Qt. Tym razem zajmiemy się layoutami, które pozwolą nam uporządkować widgety w oknach naszych aplikacji. Przy okazji załatwią nam sprawę “ładnego” wyglądu okna w przypadku jego rozciągania.
lip 26 2009
Kurs Qt – Część 4 – Wątki
Kolejna cześć kursu Qt. Tym razem będzie o wątkach. Niestety, praca i brak niebezpieczeństwa zawalenia egzaminów strasznie rozleniwiają, więc dopiero teraz udało mi się zebrać i coś napisać (nie lubię wakacji, masa czasu a nic nie udaje się zrobić
). Stworzymy proste wątki, będzie to tradycyjny przykład producenta i konsumenta. Na początku z wyścigami, później postaramy się przed nimi zabezpieczyć. A więc do dzieła:
cze 14 2009
Kurs Qt – Część 3 – Zasoby
W tej części zrobimy coś pożytecznego. Napiszemy notatnik. Ale nie byle jaki. Będzie miał ikony!
A co za tym idzie nauczymy się dołączać zasoby do naszej aplikacji. Czas przygotować ikony, które dołączymy do naszej aplikacji z poprzedniej cześciu kursu.
Plik zasobów to zwykły xml, który ma w sobie ścieżki do plików które mają być później dołączone do naszego programu. Plik zasobów wygląda tak:
1 2 3 4 5 6 7 8 9 10 | <rcc> <qresource prefix="/" > <file>copy.png</file> <file>cut.png</file> <file>paste.png</file> <file>open.png</file> <file>save.png</file> <file>new.png</file> </qresource> </rcc> |
Jak widać składnia jest bardzo prosta. W przypadku Qt Creator mamy odpowiedni edytor, który w sposób klikany, załatwia za nas całą pracę (dodaj pozycję, wskaż plik, ciesz się życiem
). Nasz plik nagłówkowy się niewiele zmienił. Trochę go posprzątamy (wyrzucimy etykiety i przyciski, żeby zrobić miejsce pod pole edycji teksty, które dodamy w przyszłych częściach kursu) i dodamy wskaźniki do obiektów pasków narzędzi (linie 25. i 26.).
cze 07 2009
Kurs Qt – część 2 – Qt Creator
Ponieważ kilka osób chciało opisu jak korzystać z Qt Creator, więc dzisiaj zamiast klepać kolejne linijki kodu (no komu w weekend się chce pisać?) przygotowałem kilka obrazków pokazujących jak się poruszać po Qt Creator (jak ktoś mi podpowie jak zrobić screencast z 1920×1200 bez zabijania całej maszyny to postaram się szybko coś nakręcić). Miłego czytania.
Qt Creator ma wypełnić lukę która pozostała po Qt Designer w Qt3, a który to w Qt4 przekształcił się w czysty edytor formatek. Qt Creator zawiera w sobie wygodny edytor kodu (choć jego używanie na początku może wydawać się trudne ze względu na odmienne podejście do zarządzania oknami niż w przypadku innych IDE), debuger, dokumentację (integracja Qt Assistant) oraz edytor formatek (Qt Designer). Aktualna wersja to 1.1.1 (Windows) lub 1.1.0 (Linux i MacOS X). Sam program po uruchomieniu wygląda tak:
cze 03 2009
Kurs Qt – część 1 – sygnały, sloty i własne widgety
Miał być w piątek, więc wrzucam dzisiaj.
Z tej części kursu poznamy klasę głównego okna w Qt, jak tworzyć własne widgety oraz na czym polega mechanizm sygnałów i slotów. Miłej lektury.
Główne okno w Qt reprezentuje klasa QMainWindow. Jest to chyba najczęściej dziedziczona klasa. Pozwala nam na umieszczanie menu oraz statusu. Najprostszy program z QMainWindow wygląda tak:
mainwindow.hpp:
1 2 3 4 5 6 7 8 9 10 11 12 | #ifndef MAINWINDOW_HPP #define MAINWINDOW_HPP #include <qmainwindow> class MainWindow : public QMainWindow { public: MainWindow(); }; #endif // MAINWINDOW_HPP |
Czytaj dalej “Kurs Qt – część 1 – sygnały, sloty i własne widgety”
cze 01 2009
Kurs Qt – wstęp
Przed-wstęp:
Już od dawna miałem zamiar zacząć pisać taki tutorial (obok kursu C++, ale ten chyba zacznę jak wyjdzie C++0x). Głównym powodem jest brak takich materiałów w polskiej sieci. Moux nie napisał nic nowego od 4 lat (i nie sądzę żeby miał ochotę to reaktywować). Z kolei Biblioteka Riklaunima traktuje głównie o wykorzystaniu Qt w Pythonie, czyli PyQt4. Drugim powodem jest fakt, że nie ma lepszego sposobu na podniesienie swojej wiedzy jak uczenie innych. Poza tym ten blog, z założenia, ma być blogiem technicznym (poza moimi własnymi pierdołami, które są zabawne lub ważne dla mnie samego) skupionym wokół programowania w C++, Qt czy pokazujące różne zagadnienia z okolic KDE, Linuksa jako takiego, czy mojego własnego fooaudio (uprzedzając pytania: fooaudio się rozwija, powoli (ze względu na moje ostatnie problemy osobiste oraz nadchodzącą sesję), jednak idzie do przodu. I jak na ironię im wolniej idzie tym lepszy kod powstaje. Jednak już niedługo projekt powinien nabrać sensownego tempa i gdzieś w okolicach połowy lipca o nim napiszę).
Na początku kurs będzie obejmował kilka prostych rzeczy (prezentacja kontrolek, ustawianie ich, tworzenie własnych, sygnały i sloty), później zajmę się bardziej zaawansowanymi rzeczami, niekoniecznie związanymi z GUI (aplikacje sieciowe, wielowątkowość, multimedia). Jest także opcja, że jeżeli interesowałby was jakiś konkretny temat, to postaram się go możliwie szybko opisać. Dajcie mi wtedy znać albo w komentarzach, albo przed jid/e-mail (znajdziecie je w dziale “O mnie“). Miłej lektury, mam nadzieję że komuś to się przyda.




