Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: programmeren lukt nog steeds niet  (gelezen 7043 keer)

Offline Ivan1986

  • Lid
programmeren lukt nog steeds niet
« Gepost op: 2008/02/02, 18:58:35 »
ik blijf proberen maar ik heb nu al zoveel gelezen en gezoch maar ik kan nog steeds niet begrijpen hoe ik een grafische omgeving kan programeren. Ik ben al heel wat bezig met python en ik snap loops en alles wat er rond draait enzo maar ik ben het een beetje beu aan het worden dat ik nog steeds niet iets grafisch kan programeren.
Ik heb al verschillende programma's geprobeerd waarme je een venster kan opbouwen maar hoe je deze twee dan moet linken kan ik nergens terug vinden.
Weet er iemand een goede turtorial staan hiervaan. of kan iemand me dit eens uitleggen :s ik wil zooo graag dit kunnen.

Ivan

Offline profoX

  • Lid
    • wesley
    • Lionslink
programmeren lukt nog steeds niet
« Reactie #1 Gepost op: 2008/02/02, 19:36:31 »
Welke programmeertaal en welke grafische toolkit?
Human Knowledge Belongs To The World -- Antitrust (2001)
Nederlandstalige Ubuntu documentatie van Ubuntu-NL (wiki)

Offline Ivan1986

  • Lid
programmeren lukt nog steeds niet
« Reactie #2 Gepost op: 2008/02/02, 19:43:15 »
ik zou liefst in python leren omdat dat redelijk makkelijk is. en als grafische toolkit maakt het niet zoveel uit. Lieft had ik graag mijn eigen tekeningen als knoppen gebruikt en dus niet de standaard die er in zitten, natuurlijk weet ik niet of dit makkelijker of moeilijker is. als je mij aanraad om eerst gewoon te programeren met de standaard dan kan ik dat zeker aanvaarden. Dus als je me als beginner iets aanraad volg ik hier graag in

Offline profoX

  • Lid
    • wesley
    • Lionslink
programmeren lukt nog steeds niet
« Reactie #3 Gepost op: 2008/02/02, 19:57:06 »
"Eigen knoppen" is véél moeilijker in de toolkits die ik ken.

Er zijn twee populaire/moderne toolkits in Linux-land (er zijn er natuurlijk ook nog andere, maar één van deze twee moet je nemen als je het voor jezelf en voor al je gebruikers makkelijk wil maken).

* Ikzelf gebruik Qt 4 als grafische toolkit (en eveneens als algemene/cross-platform toolkit) - Qt 4 wordt onder andere gebruikt voor de ontwikkeling van KDE, alle KDE-programma's, de Opera-webbrowser, Skype en Google Earth

* De andere populaire grafische toolkit is de Gtk+ toolkit. Gtk+ wordt onder andere gebruikt voor de ontwikkeling van GNOME en alle GNOME-programma's.

Als je cross-platformprogramma's wil schrijven (programma's voor alle besturingssystemen) dan wil je natuurlijk dat de integratie met eender welk besturingssysteem zo hoog mogelijk is, zowel qua looks als functionaliteit. Gtk is standaard wel cross-platform, maar de programma's zien er vreemd uit op andere besturingssystemen en voor desktopintegratie is er weinig te vinden. wxWidgets kan daar eventueel een mouw aan passen (wxWidgets gebruikt native rendering, OF Gtk, afhankelijk van het OS) Qt 4 heeft standaard goede cross-platformtools, omdat Qt 4 meer is dan slechts een grafische toolkit.

Je zal van beide toolkits veel voor- en tegenstanders vinden. Zelf ben ik erg gehecht aan Qt 4 (let wel op de licentie: je mag geen commerciële programma's maken zonder een betaalde licentie! open-source-programma's mag je vanzelfsprekend wel maken zonder speciale licenties). Andere mensen op dit forum zijn dan weer gehecht aan wxWidgets, of puur Gtk+.

Zoek eens rond op internet en rapporteer maar terug wanneer je je keuze hebt gemaakt ;)

Enkele links om je op weg te helpen:

Officiële Qt-website: http://trolltech.com/products/qt/features
De officiële GUI design-tool van Qt: http://trolltech.com/products/qt/features/designer / http://doc.trolltech.com/4.3/qt4-designer.html

Officiële Gtk+-website: http://www.gtk.org/
Gtk heeft geen officiële GUI design-tool, maar Glade is populair: http://glade.gnome.org/screenshots.html

Officiële wxWidgets-website: http://www.wxwidgets.org/
Human Knowledge Belongs To The World -- Antitrust (2001)
Nederlandstalige Ubuntu documentatie van Ubuntu-NL (wiki)

Offline leendert

  • Lid
    • Dutchgimpers.nl
programmeren lukt nog steeds niet
« Reactie #4 Gepost op: 2008/02/02, 20:30:44 »
Als je voor wxwidgets en puthon gaat, is dit een erg goede handleiding:

http://www.zetcode.com/wxpython/

Die ben ik momenteel ook aan het doorwerken.

Offline profoX

  • Lid
    • wesley
    • Lionslink
programmeren lukt nog steeds niet
« Reactie #5 Gepost op: 2008/02/02, 20:31:53 »
Citaat van: profoX
"Eigen knoppen" is véél moeilijker in de toolkits die ik ken.
Hier moet ik eigenlijk wel even bij vermelden dat je met Qt 4 nogal veel dingen zelf kunt stijlen dankzij QSS (Qt Style Sheets) gebaseerd op CSS (Cascading Style Sheets)

http://doc.trolltech.com/4.3/stylesheet.html

Natuurlijk kan je voor zowel Qt als Gtk+ ook eigen "Styles/Themes" schrijven en gebruiken voor je programma, of een eigen Theming engine schrijven, maar dat zijn echt wel meer geavanceerde topics. Qt Stylesheets zijn in principe heel erg simpel en kunnen een heel programma stijlen met de bekende CSS-syntax.

Citaat van: leendert
Als je voor wxwidgets en puthon gaat, is dit een erg goede handleiding:

http://www.zetcode.com/wxpython/

Die ben ik momenteel ook aan het doorwerken.
Alleen jammer dat men je daar niet uitlegt hoe je je GUI (grafische interface) kan tekenen en daarna integreren in je programma. In die handleiding daar wordt de GUI volledig geprogrammeerd via code. Het zou leuker zijn als ze voorbeelden gaven voor (bijvoorbeeld) wxGlade.
Human Knowledge Belongs To The World -- Antitrust (2001)
Nederlandstalige Ubuntu documentatie van Ubuntu-NL (wiki)

programmeren lukt nog steeds niet
« Reactie #6 Gepost op: 2008/02/02, 20:53:16 »
http://www.learningpython.com/tutorial-index/

hiermee heb ik het geleerd...kijk naar de tutorials over pygtk...

eigenlijk is het best simpel, ge maakt een gui met glade, daarna kunt ge simpel met een paar lijntjes code uw .glade koppelen...
import pygtk; pygtk.require("2.0")
import gtk
import gtk.glade

self.gladefile = "voorbeeld.glade"
self.wTree = gtk.glade.XML(self.gladefile)
dan maakt ge uw dictionary en voila...

Offline leendert

  • Lid
    • Dutchgimpers.nl
programmeren lukt nog steeds niet
« Reactie #7 Gepost op: 2008/02/02, 21:00:08 »
Citaat van: profoX
Hier moet ik eigenlijk wel even bij vermelden dat je met Qt 4 nogal veel dingen zelf kunt stijlen dankzij QSS (Qt Style Sheets) gebaseerd op CSS (Cascading Style Sheets)

http://doc.trolltech.com/4.3/stylesheet.html
Wow, dat is gaaf!
Misschien dat dit een reden is dat ik eens naar Qt ga kijken;)

edit: ik heb trouwens nog wel wat gevonden over wxwidgets in combinatie met wxglade:

Het is een soort diavoorstelling met uitleg over python en wxwidgets, en begint met de uitleg van python
en bij dia 144 begint de uitleg van wxwidgets:

http://crotona.org/~jeroen/docs/python/img144.html

eerst de basis en later komt uitleg over het werken met wxglade.

Offline profoX

  • Lid
    • wesley
    • Lionslink
programmeren lukt nog steeds niet
« Reactie #8 Gepost op: 2008/02/03, 00:56:33 »
Citaat van: leendert
Citaat van: profoX
Hier moet ik eigenlijk wel even bij vermelden dat je met Qt 4 nogal veel dingen zelf kunt stijlen dankzij QSS (Qt Style Sheets) gebaseerd op CSS (Cascading Style Sheets)

http://doc.trolltech.com/4.3/stylesheet.html
Wow, dat is gaaf!
Misschien dat dit een reden is dat ik eens naar Qt ga kijken;)
Je zal nog wel meer redenen vinden ;)
Hoewel er voor Gtk+ en wxWidgets natuurlijk ook wel voordelen te vinden zijn..
Blijft uiteindelijk altijd een moeilijke keuze welke toolkit je gaat gebruiken...
het is een keuze net zoals "GNOME of KDE", beide zijn goed en hebben hun eigen voor- en nadelen.
Human Knowledge Belongs To The World -- Antitrust (2001)
Nederlandstalige Ubuntu documentatie van Ubuntu-NL (wiki)

Offline leendert

  • Lid
    • Dutchgimpers.nl
programmeren lukt nog steeds niet
« Reactie #9 Gepost op: 2008/02/04, 17:29:21 »
Qtdesigner ziet er goed uit, maar is deze wel opensource en gratis?? Ik kan hem niet vinden in pakketbeheer, wat gebruik jij?

Handig van wxglade is dat deze ook de python code kan genereren.

Ik heb nog steeds geen keuze kunnen maken :s

Offline profoX

  • Lid
    • wesley
    • Lionslink
programmeren lukt nog steeds niet
« Reactie #10 Gepost op: 2008/02/04, 19:22:05 »
Leendert: ik gebruik Qt's Designer ja. Die is vanzelfsprekend wel open source en gratis. Het pakket heet qt4-designer en zit in de main branch van de repositories, dus je zou het wel moeten kunnen vinden.

PyQt4 heeft ook een Python compiler voor de bestanden die je hebt gemaakt met Qt's Designer. Het programma heet "pyuic4" en bevindt zich in het pakket pyqt4-dev-tools. Je kan eventueel ook de XML file die je gemaakt hebt met Qt's Designer on-the-fly inlezen zonder het te compileren met pyuic4. Ligt er maar net aan wat je eisen zijn :)

PS: let op dat je Qt 4 gebruikt, die is véél moderner/beter dan Qt 3
Human Knowledge Belongs To The World -- Antitrust (2001)
Nederlandstalige Ubuntu documentatie van Ubuntu-NL (wiki)

Offline Double12

  • Lid
programmeren lukt nog steeds niet
« Reactie #11 Gepost op: 2008/02/04, 19:44:20 »
Mensen, wat ik niet helemaal snap is dit: ik dacht dat Glade gewoon GTK-code genereert die je zeg maar in de broncode van je programma plakt. Maar blijkbaar is het toch niet zomaar te lezen als GTK-code, want je moet wel allemaal Glade-headers en -verwijzingen toevoegen.

Trouwens, is er, behalve dat het meer werk is, echt een belangrijk nadeel aan zelf QT-code schrijven ipv het te laten doen door de designer?

Offline profoX

  • Lid
    • wesley
    • Lionslink
programmeren lukt nog steeds niet
« Reactie #12 Gepost op: 2008/02/04, 19:46:33 »
Citaat van: Double12
Mensen, wat ik niet helemaal snap is dit: ik dacht dat Glade gewoon GTK-code genereert die je zeg maar in de broncode van je programma plakt. Maar blijkbaar is het toch niet zomaar te lezen als GTK-code, want je moet wel allemaal Glade-headers en -verwijzingen toevoegen.

Trouwens, is er, behalve dat het meer werk is, echt een belangrijk nadeel aan zelf QT-code schrijven ipv het te laten doen door de designer?
Meer werk, moeilijker om het "goed" te doen (beetje vervelend om in code een layout te schrijven d.m.v. QLayout, zeker als je achteraf weer wat dingen moet toevoegen/verwijderen in de layout, en zonder QLayout is je venster niet resizable, ofwel moet je handmatig resize-code schrijven, en dat is niet van deze tijd)
En tot slot is scheiding van GUI en code altijd een goed idee, vind ik.
Human Knowledge Belongs To The World -- Antitrust (2001)
Nederlandstalige Ubuntu documentatie van Ubuntu-NL (wiki)