Forum >> Programmazione Python >> GUI >> RIMPICCIOLIRE O INGRANDIRE SU TKINTER

Pagina: 1

Premettendo che sono nuova su questo forum e che uso python da molto poco avrei bisogno urgentemente di un aiuto.
Utilizzando tkinter ho creato dei semplici cerchi. La mia intenzione é quella di far ingrandire il cerchio e poi farlo rimpicciolire, quindi alterare sostanzialmente le dimensioni che ho impostato inizialmente. Credo che questo possa avvenire con il comando if ma non sono sicura e non ho esperienza ne le competenze tali per capirlo, mi affido a voi!

Grazie in anticipo, aspetto le vostre risposte!!!



Il problema è che se hai dei dubbi su come funziona "if", non so se tkinter sia una cosa gestibile per te... dovresti probabilmente andare per gradi. Comuque, se non posti nemmeno una riga di codice... boh, si potrebbe fare in mille modi suppongo.
https://leanpub.com/capirewxpython: Capire wxPython, il mio libro
https://pythoninwindows.blogspot.com: Python in Windows, il mio blog e le mie guide
from tkinter import *

from time import sleep


root = Tk()

idP = Canvas(root)

idP.config(width=600, height=500, bg='White')

idP.pack()


def metro():

#Oggetto 1 - Cerchio

idP.create_oval(100, 50, 500, 450, outline= 'white', fill= 'red', tags=('circ1'))

#Oggetto 2 - Cerchio

idP.create_oval(150, 100, 450, 400, outline= 'white', fill= 'white', tags=('circ2'))

#Oggetto 3 - Rettangolo

idP.create_rectangle(80, 210, 520, 280, fill= 'dark blue', tags=('rett'))

#Oggetto 4 - Testo

idP.create_text(290, 250, text = ' PICCADILLY CIRCUS', fill= 'white', font=('helvetica', '35', 'bold'), tags=('testo'))

return

metro()


def avanti():

x=10

idP.move('circ1', x,0)

idP.move('circ2', x,0)

idP.move('rett', x,0)

idP.move('testo', x,0)

return


def indietro():

x=-10

idP.move('circ1', x,0)

idP.move('circ2', x,0)

idP.move('rett', x,0)

idP.move('testo', x,0)

return


def animate1():

for x in range(0,150):

idP.move('circ1', 1,0)

idP.move('circ2', 1,0)

idP.move('rett', 1,0)

idP.move('testo', 1,0)

root.update()

sleep(0.01)


def animate2():

for x in range(0,150):

idP.move('circ1', -1,0)

idP.move('circ2', -1,0)

idP.move('rett', -1,0)

idP.move('testo', -1,0)

root.update()

sleep(0.01)


def restart():

idP.delete(ALL)

metro()


opz = Frame(root)

opz.pack()

b1 = Button(opz, text = '<---', fg='blue', command = indietro)

b1.grid(column = 0, row = 0, padx = 5, pady = 3)

b2 = Button(opz, text = '--->', fg='blue', command = avanti)

b2.grid(column = 1, row = 0, padx = 5, pady = 3)

b3 = Button(opz, text = ' << ', fg='blue', command = animate2)

b3.grid(column = 0, row = 1, padx = 5, pady = 3)

b4 = Button(opz, text = ' >> ', fg='blue', command = animate1)

b4.grid(column = 1, row = 1, padx = 5, pady = 3)

b5 = Button(opz, text = ' RESTART ', fg='blue', command = restart, font=('helvetica', '15', 'bold') )

b5.grid(column = 0, row = 2, columnspan=2, padx = 5, pady = 3)

mainloop()





questo é il programma, il problema rimane sempre nel cercare di far rimpicciolire e ingrandire l'oggetto


--- Ultima modifica di sofia181818 in data 2019-05-30 12:40:33 ---


Pagina: 1



Esegui il login per scrivere una risposta.