Presentation is loading. Please wait.

Presentation is loading. Please wait.

QT Intro. 김기형

Similar presentations


Presentation on theme: "QT Intro. 김기형"— Presentation transcript:

1 QT Intro. 김기형 (kkhsoft@sparcs.org) http://kkhblog.sparcs.net

2 2/23 Made and Designed by KKHSOFT. SPARCS GUI in Linux

3 3/23 Made and Designed by KKHSOFT. SPARCS GUI in Linux

4 4/23 Made and Designed by KKHSOFT. SPARCS Program by QT

5 5/23 Made and Designed by KKHSOFT. SPARCS What is QT? Especially, for GUI progrmming – For database, networking, XML, OpenGL, etc. Cross Platform Qt is a comprehensive C++ application development framework. It includes a class library and tools for cross-platform development and internationalization.

6 6/23 Made and Designed by KKHSOFT. SPARCS What is QT? “ Write Once, Run Everywhere ” Open Source – Free in Linux, Unix (http://www.trolltech.com/download/qt/x11.html)http://www.trolltech.com/download/qt/x11.html – Free in both Windows and Mac recently (http://www.trolltech.com/download/qt/windows.html)http://www.trolltech.com/download/qt/windows.html QPL(Q Public License) with GPL – Free except for commercial use XlibGDICarbon Unix/LinuxMS WindowsMac OS X Embedded Linux QT API QT Application Source Code

7 7/23 Made and Designed by KKHSOFT. SPARCS Before Start.. Knowledge about C++ – At first, you can use C – Recommend C seminar leaded by battery (battery@sparcs.org)battery@sparcs.org Understanding of OOP How to install – By yourself..

8 8/23 Made and Designed by KKHSOFT. SPARCS How to use QApplication – Necessary header file Widget in QT – Include [widget_name].h – Interface that provide control QObject – Basic class – Provide signal & slot #include

9 9/23 Made and Designed by KKHSOFT. SPARCS How to use Why qmake? – Just easy … int main(int argc, char *argv[]) { QApplication app (argc, argv); QLabel *label = new QLabel("Hello Qt!", 0); app.setMainWidget(label); label->show(); return app.exec(); } qmake -project qmake hello.pro Makefile hello.pro

10 10/23 Made and Designed by KKHSOFT. SPARCS How to use Signal & Slot – Connect(), disconnect() Moc (Meta Object Compiler) – Make source file that C++ compiler can understand from your well-defined file (generally from header file)

11 11/23 Made and Designed by KKHSOFT. SPARCS How to use Header file class FindDialog : public QDialog { Q_OBJECT public: FindDialog(QWidget *parent=0, const char *name=0); signals: void findNext(const QString &str, bool caseSensitive); … private slots: void findClicked(); void enableFindButton(const QString &text); private: … };

12 12/23 Made and Designed by KKHSOFT. SPARCS How to use Source file (cpp) #include "finddialog.h ” … FindDialog::FindDialog(QWidget *parent, const char *name) : QDialog(parent, name) { … connect(findButton, SIGNAL(clicked()), this, SLOT(findClicked())); … void FindDialog::findClicked() { QString text=lineEdit->text(); bool caseSensitive = caseCheckBox->isOn(); if (backwardCheckBox->isOn()) emit findPrev(text,caseSensitive); else emit findNext(text,caseSensitive); }

13 13/23 Made and Designed by KKHSOFT. SPARCS Qt Designer Powerful GUI layout and forms builder – Save time to make UI – Easy for connection

14 14/23 Made and Designed by KKHSOFT. SPARCS Qt Designer How to make Connections How to modify Source Right click on the widget

15 15/23 Made and Designed by KKHSOFT. SPARCS Qt Designer

16 16/23 Made and Designed by KKHSOFT. SPARCS Qt Designer Very useful! Make layout, form and connection Don ’ t program in Qt designer! Just design and use vim

17 17/23 Made and Designed by KKHSOFT. SPARCS Qt-embedded Use Qt for Embedded Programming For mobile, PDA and embedded linux QT Application Source Code Binary file for X86 Binary file for Embedded Linux Qt-embedded-x86 Qt-embedded Virtual Frame Buffer Embedded Machine redirection porting

18 18/23 Made and Designed by KKHSOFT. SPARCS Qt-embedded qt-embedded-free – Qvfb, qt-embedded compiler QT Virtual Frame Buffer – Embedded machine use Frame buffer, not X – Test in host before porting application qvfb – width 640 – height 480 – depth 32 &

19 19/23 Made and Designed by KKHSOFT. SPARCS Qt-embedded Execution in qvfb Unexpected Error – With sudo.../demofile -qws Semop unlock failure 부적 절한 인수 Semop lock failure 부적절 한 인수

20 20/23 Made and Designed by KKHSOFT. SPARCS Others from Qt Qtopia – an application platform and user interface for embedded Linux Binding for other Language – Python, Ruby, Perl, etc. Qt Linguist, Qt Assistant, QSA, and so on.

21 21/23 Made and Designed by KKHSOFT. SPARCS Further Work Qt study..? – More than 5 people who wanna learn more about Qt Qt Embedded Programming..? – Other members who have interest – Need more support More specific Qt seminar – Enough time, many attendances – But, 귀차니즘 …

22 22/23 Made and Designed by KKHSOFT. SPARCS Reference Trolltech – http://www.trolltech.com http://www.trolltech.com Qt 4 Open Source Edition download – http://www.trolltech.com/download/opensource.html http://www.trolltech.com/download/opensource.html Qt 4.1 Refernce Document – http://doc.trolltech.com/4.1/ http://doc.trolltech.com/4.1/ Qt Community site – http://www.qtcentre.org http://www.qtcentre.org

23 23/23 Made and Designed by KKHSOFT. SPARCS Thank you! Any Question..?


Download ppt "QT Intro. 김기형"

Similar presentations


Ads by Google