Creation d'une popup similaire à un bureau
Bonjour,
Je suis entrain de coder une popup qui fonctionne comme un Bureau :P :
La popup sera collée sur le bureau: collante, en dessous de toutes les fenêtres, dans l'espace de travail courant .
- Vue d'icones+autres fichiers d'un chemin modifiable ( ex: ~/Desktop )
- menu de fichier(execute,open,etc)
- reactivité des icones(click,move,select)
- zone de texte(memo)
- heure&date+meteo(avec icones)
Os: Ubuntu xenial .
Le code est GTK2 mais ça peut changer si GTK3 s'avére plus adapté .
( GTK2 a été choisi en premier car le programme va être testé sur des systemes par défault avec cette version . )
------------
Etape 1=
La fenêtre avec glade + le fichier python qui lance le fichier glade .
Si vous avez mieux n'hésitez pas ;)
desktop_popup.glade
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
| <?xml version="1.0" encoding="UTF-8"?>
<!-- Generated with glade 3.18.3 -->
<interface>
<requires lib="gtk+" version="3.12"/>
<object class="GtkWindow" id="window1">
<property name="can_focus">False</property>
<property name="type">popup</property>
<property name="title" translatable="yes">Desktop Popup</property>
<property name="window_position">center</property>
<property name="type_hint">desktop</property>
<property name="skip_taskbar_hint">True</property>
<property name="skip_pager_hint">True</property>
<property name="urgency_hint">True</property>
<property name="has_resize_grip">True</property>
<child>
<object class="GtkIconView" id="iconview1">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="margin">6</property>
<property name="selection_mode">multiple</property>
<property name="columns">4</property>
<property name="reorderable">True</property>
<property name="tooltip_column">1</property>
<property name="activate_on_single_click">True</property>
</object>
</child>
</object>
</interface> |
script éxecutable: py_launch_glade
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| #!/usr/bin/env python
# py_launch_glade
import pygtk
pygtk.require('3.0')
import gtk
gladefile = "desktop_popup.glade"
wTree = gtk.Builder()
wTree.add_from_file(gladefile)
window = wTree.get_object("GtkWindow")
window.show_all()
gtk.main() |
-----------------------
( Corrigé )
l y a l'aperçu de glade mais je voudrais voir ce que ça donne une fois éxecuté , mais la fenêtre n'apparait pas , pourtant pas de message d'erreur (ctrl-c pour quitter):
Code:
1 2 3 4 5 6
| $ ./py_launch_glade
^CTraceback (most recent call last):
File "./py_launch_glade", line 18, in <module>
gtk.main()
KeyboardInterrupt
$ |