denoising.py/code/gtk/test2.py

78 lines
1.8 KiB
Python

import pygtk
pygtk.require('2.0')
import gtk
from random import *
#renvoi une valeur aleatoire
def random2():
a = random()
aa = a*255.0*257.0
b = round(aa)
c = int(b)
return c
#fonction qui genere un evenement quitter
def click_quite(widget):
gtk.main_quit()
#seconde gestionn de pixel
def expose_handler_remplir(widget, event):
widget.set_size_request(512,512)
w, h = widget.window.get_size()
print "w = " + str(w) + " | h = " + str(h)
xgc = widget.window.new_gc()
cptW = 0
cptH = 0
while cptH < 512:
while cptW < 512:
xgc.set_rgb_fg_color(gtk.gdk.Color(random2(),0,0, pixel = 0))
widget.window.draw_point(xgc, cptW, cptH)
cptW += 1
cptH += 1
cptW = 0
print "cptW = " + str(cptW) + "| cptH = " + str(cptH)
#definition des elements de base de la fenetre
def param_main_window(widget):
widget.set_title("Test object drawable")
widget.set_size_request(500,500)
def param_main_manual_window(widget, src1, sizeX, sizeY):
widget.set_title(src1)
widget.set_size_request(sizeX, sizeY)
#creation de la fneetre principal
fen = gtk.Window(gtk.WINDOW_TOPLEVEL)
#definition des elements de base de la fenetre
param_main_manual_window(fen, "Test object drawable manual", 800, 800)
button = gtk.Button("Quit") #bouton
button2 = gtk.Button("Quit") # seocnd bouton
zone = gtk.DrawingArea() #zone de dessin
vBox = gtk.VBox() #boite de placement
#raccordement a la fenetre de la box
fen.add(vBox)
#connection des differents elements
button.connect("clicked", click_quite)
button2.connect("clicked", click_quite)
zone.set_size_request(512,512)
zone.connect("expose-event", expose_handler_remplir)
#ajout des elemnts dans les box
vBox.pack_start(button)
vBox.pack_start(zone)
vBox.pack_start(button2)
#affichage des differents elements
button.show()
button2.show()
zone.show()
vBox.show()
fen.show()
gtk.main()