Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2005-10-12 00:22:17

  uki - Użytkownik

uki
Użytkownik
Zarejestrowany: 2005-03-17

Biblioteki graficzne

Witam bede musial napisac gre na zaliczenie.Chcialbym zapewnic jakies przyjazne gui zeby rozgrywka nie sprowadzala sie do wybierz pozycje 1 jesli chcesz rozpoczac nowa rozgrywke 2. jesli chcesz wczytac stan gry etc.
W tym celu musze poznac jakas biblioteke graficzna do c++ .
I tutaj pytanie do wyjadaczy co byscie polecali.Slyszalem od znajomego o libgtk ktory uzywal jej piszac w c.Jak sie ma ta bibliotek z zastosowanie w czystym c++??

Ogolnie chodzi mi o jaks w miare prosta do nauki zapewniajaca szybkie i latwe tworzenie buttonow labelow inputow czy nakladanie jpg na tlo jakiegos obszaru itp.

Offline

 

#2  2005-10-12 07:30:26

  Prezu - Masta Haka

Prezu
Masta Haka
Skąd: Trzebnica
Zarejestrowany: 2005-06-02

Re: Biblioteki graficzne

Właściwie gtk to nie biblioteka graficzna, tylko okienkowa. Jeśli chcesz by to była palikacja okienkowa to tak. Ale w C++ polecam wxwidgets, czyli właściwie gtk opakowane ładnie w klasy C++. Bo gtk jest w C. Jeśli bardziej ci pasuje KDE niż GNOME to polecam Qt. Obie biblioteki obsługują podstawowe operacje na grafice. A bardziej zaawansowana grafila / animacja, hmmm nie znam się na tym, ale chyba sdl się do tego nadaje.

Offline

 

#3  2005-10-13 13:27:58

  Bogdan - Użytkownik

Bogdan
Użytkownik
Skąd: Sulechów
Zarejestrowany: 2005-01-24

Re: Biblioteki graficzne

Witam
Mam zamiar popróbować swojich siły w QT
1. Jakie pakiety musze pobrac (przez APT) żeby działały mi biblioteki QT. Wiem że wystarczy wpisac "apt-cache search QT" ale tam tego tyle wyskakuje że nie mam pojecia co instalować. A nie ptrzbny mi edytor graficzny QT tylko w formie bibliotek do g++ (nie wiem czy dobrze to napisałem)
2. jak skompilować program w g++ , który wykorzystuje biblioteki z QT tzn: normalnie pisze: "g++ -o nazwa1 nazwa.cpp" a jak zrobic żeby działało z biblioteką QT ?

pozdrawiam


i spowrotem jestem poczatkujący......

Offline

 

#4  2005-10-13 15:55:25

  Prezu - Masta Haka

Prezu
Masta Haka
Skąd: Trzebnica
Zarejestrowany: 2005-06-02

Re: Biblioteki graficzne

Kod:

# apt-get install qt3-dev-tools qt3-designer qt3-linguist qt3-assistant libqt3-mt-dev libqt3-headers

Odpal Qt Assistanta:

Kod:

$ assistant

Tam masz całą dokumentację, tutoriale, FAQ itp. Zawsze jak piszę w Qt mam otwartego Assistanta i lukam w razie potrzeby.

Offline

 

#5  2005-10-14 00:07:39

  uki - Użytkownik

uki
Użytkownik
Zarejestrowany: 2005-03-17

Re: Biblioteki graficzne

Skad wziac lib qt3-mt-dev qt3-headers
jak sciaglem paczke z debian.org to skolei jest zbyt duze dependencies ??
Na ktorej plytce debiana to znajde??

Offline

 

#6  2005-10-14 07:31:22

  uki - Użytkownik

uki
Użytkownik
Zarejestrowany: 2005-03-17

Re: Biblioteki graficzne

Moze jeszcze sprecyzuje.Chodzi mi o zwykle programowanie z poziomu notatnika nie chce uzywac zadnych rad'ow a jak odpalilem assistant to tam tutorial pokazuje ze to sie odbywa za pomoca jakiegos kombajna calego.

Ja chce miec zwykla biblioteke qt zeby piszac:

Kod:

#include <qapplication.h>
#include <qpushbutton.h>

int main( int argc, char **argv )
{
    QApplication a( argc, argv );
QPushButton hello( "Hello world!", 0 );
    hello.resize( 100, 30 );
a.setMainWidget( &hello );
    hello.show();
    return a.exec();
}

i kompilujac za pomoca skryptu :

Kod:

 #! /bin/bash
#############################################
#
# A script to compile qt programs. To compile,
# enter: ./compile cpp_name without the '.cc'.
# To run the program: ./name [ -style=windows||platinum ]
#
#############################################

QTDIR="/usr/lib/qt3";

CPP_FILE=$1;

########## COMPILE CODE HERE ##############

g++ -c -I${QTDIR}/include $CPP_FILE.cc;
g++ -o $CPP_FILE $CPP_FILE.o -L${QTDIR}/lib -lqt;

Nie wywalalo mi komunikatu ze :

Kod:

hello.cc:1:26: qapplication.h: No such file or directory

[/list]

Offline

 

#7  2005-10-14 09:00:27

  Prezu - Masta Haka

Prezu
Masta Haka
Skąd: Trzebnica
Zarejestrowany: 2005-06-02

Re: Biblioteki graficzne

Chodziło mi oczywiście o libqt3-mt-dev libqt3-headers. :] Poprawiłem w poprzednim poście.

Offline

 

#8  2005-10-14 20:46:03

  uki - Użytkownik

uki
Użytkownik
Zarejestrowany: 2005-03-17

Re: Biblioteki graficzne

Mam problem ktory nie wiem jak ugryzc.
A mianowicie kompiluje sobie hello.cc

Kod:

#include <qapplication.h>
#include <qpushbutton.h>

int main( int argc, char **argv )
{
    QApplication a( argc, argv );
QPushButton hello( "Hello world!", 0 );
    hello.resize( 100, 30 );
a.setMainWidget( &hello );
    hello.show();
    return a.exec();
}

skryptem o nastepujacej tresci:

Kod:

#! /bin/bash
#############################################
#
# A script to compile qt programs. To compile,
# enter: ./compile cpp_name without the '.cc'.
# To run the program: ./name [ -style=windows||platinum ]
#
#############################################

QTDIR="/usr/include/qt3";

CPP_FILE=$1;

########## COMPILE CODE HERE ##############

g++ -c -I${QTDIR} $CPP_FILE.cc;
g++ -o $CPP_FILE $CPP_FILE.o -L${QTDIR} -lqt;

I dostaje taki komunikat

Kod:

collect2: ld returned 1 exit status

Niby pojawia sie plik hello.o ale nie moge go odpalic i nie wiem co dalej robic i skad sie ten error bieze oraz czy ma wplyw na kompilacje.

Offline

 

#9  2005-10-14 22:04:16

  FF - Członek DUG

FF
Członek DUG
Skąd: Łódź
Zarejestrowany: 2004-12-23

Re: Biblioteki graficzne

Po nazwie skrypty wpisales nazwe zródła bez cc ? bo tak trzeba zrobić, moze nie masz ustawionej scieżki, ostatnie co mi przychodzi do głowy to to że brakuje Ci jakiegoś pakietu dev

Offline

 

#10  2005-10-14 23:22:43

  uki - Użytkownik

uki
Użytkownik
Zarejestrowany: 2005-03-17

Re: Biblioteki graficzne

Zainstalowane mam wszystko to co wczesniej podal prezu oczywiscie kompiluje

Kod:

./compile hello

dodatokow podczas kompilacji dostaje komunikat:

Kod:

/usr/bin/ld: cannot find -lqt

Wogule to dziwnie mam potworzone te biblioteki /usr/include/qt3
zamiast /usr/qt3/include
tak samo nie mam w katalogu qt3 folderu lib a z tego co wiem powinien byc

a i do czego sluzy przelacznik -lqt????

Offline

 

#11  2005-10-15 14:11:49

  Prezu - Masta Haka

Prezu
Masta Haka
Skąd: Trzebnica
Zarejestrowany: 2005-06-02

Re: Biblioteki graficzne

Przede wszystkim używaj -lqt-mt (zobacz na nazwę pliku: libtq-mt.so, zawsze odrzucasz lib z początku i .so z końca, to co zostanie dajesz z opcją -l). Ale tak się nie robi. Program będzie się kompilował u ciebie, ale co u innych? Poza tym jak chcesz poznać zasady kompilacji linkując z Qt, to niestety musisz sporo poczytać o tym. Ponadto jeśli chcesz by program był przenośny korzystaj z qmake - on rozpozna gdzie w danym systemie są biblioteki, jaka jest wersja Qt (czy wielowątkowa czy nie) i tym podobne pierdoły. Jeśli qmake ci się nie podoba to możesz w autotoolsach działać, ale sporo tu roboty. :/ Po to masz qmake by budowanie projektu było łatwiejsze! A ty możesz się skupić na istotnych sprawach!

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Nas ludzie lubią po prostu, a nie klikając w przyciski ;-)

[ Generated in 0.011 seconds, 12 queries executed ]

Informacje debugowania

Time (s) Query
0.00013 SET CHARSET latin2
0.00004 SET NAMES latin2
0.00114 SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='18.191.212.146' WHERE u.id=1
0.00103 REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '18.191.212.146', 1732307396)
0.00057 SELECT * FROM punbb_online WHERE logged<1732307096
0.00070 DELETE FROM punbb_online WHERE ident='13.59.95.170'
0.00070 SELECT topic_id FROM punbb_posts WHERE id=15522
0.00008 SELECT id FROM punbb_posts WHERE topic_id=1853 ORDER BY posted
0.00053 SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=1853 AND t.moved_to IS NULL
0.00009 SELECT search_for, replace_with FROM punbb_censoring
0.00264 SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=1853 ORDER BY p.id LIMIT 0,25
0.00088 UPDATE punbb_topics SET num_views=num_views+1 WHERE id=1853
Total query time: 0.00853 s