Уведомления

Группа в Telegram: @pythonsu

#1 Янв. 3, 2021 18:35:39

simonovaleksandr
Зарегистрирован: 2020-08-17
Сообщения: 21
Репутация: +  0  -
Профиль   Отправить e-mail  

Помогите найти ошибку.

И чтобы от линии не оставался след, тоже подскажите пожалуйста
как надо сделать

Офлайн

#2 Янв. 4, 2021 09:00:27

rami
Зарегистрирован: 2018-01-08
Сообщения: 280
Репутация: +  71  -
Профиль   Отправить e-mail  

Помогите найти ошибку.

Так, наверно:

 from tkinter import Tk, Canvas
 
root = Tk()
root.minsize(width=300, height=300)
root.resizable(0, 0)
c = Canvas(root, width=300, height=300)
c.pack()
line1 = c.create_line(100, 100, 200, 100)
 
def Right(event):
    if event.keysym == 'Up':
        c.move(line1, 0, -1)
 
c.bind_all('<KeyPress-Up>', Right)
root.mainloop()

Отредактировано rami (Янв. 4, 2021 14:21:13)

Офлайн

#3 Янв. 4, 2021 09:09:53

simonovaleksandr
Зарегистрирован: 2020-08-17
Сообщения: 21
Репутация: +  0  -
Профиль   Отправить e-mail  

Помогите найти ошибку.

Я исправил ошибку, но при работе программы правая точка линии
опускается только на 1 пиксель ,и дальше при нажатии PgUp не опускается.
Помогите пожалуйста эту проблему решить.
Вот код :
from tkinter import *
root=Tk()
root.minsize(width=300,height=300)
root.resizable(0,0)
c=Canvas(root,width=300,height=300 )
c.pack()
def Right(event):
if event.keysym=='Up':
y=100
y=y+1
print(“нажата клавиша”)
c.create_line(100,100,200,y)
c.bind_all('KeyPress-Up',Right)
root.mainloop()

Офлайн

#4 Янв. 4, 2021 09:11:21

simonovaleksandr
Зарегистрирован: 2020-08-17
Сообщения: 21
Репутация: +  0  -
Профиль   Отправить e-mail  

Помогите найти ошибку.

Аа я думал вы еще не проверили, только потом увидел

Офлайн

#5 Янв. 4, 2021 14:12:16

simonovaleksandr
Зарегистрирован: 2020-08-17
Сообщения: 21
Репутация: +  0  -
Профиль   Отправить e-mail  

Помогите найти ошибку.

Здравствуйте , я хотел написать программу по перемещению ПРАВОЙ ТОЧКИ линии по вертикальной оси с
помощью нажатия на клавиши PgUp PgDn ,но не знаю как это сделать , помогите пожалуйста
Вот наброски:

from tkinter import *
root=Tk()
root.minsize(width=300,height=300)
root.resizable(0,0)
c=Canvas(root,width=300,height=300 )
c.pack()
y2=100
line1 = c.create_line(100, 100, 200, y2)
def up(event):
if event.keysym=='Up':
c.move(line1, 0, -1)
print(c.winfo_width())
if event.keysym=='Down':
c.move(line1, 0, +1)
c.update()
c.bind_all('<KeyPress-Up>',up)
c.bind_all('<KeyPress-Down>',up)
root.mainloop()

Офлайн

#6 Янв. 4, 2021 14:34:19

rami
Зарегистрирован: 2018-01-08
Сообщения: 280
Репутация: +  71  -
Профиль   Отправить e-mail  

Помогите найти ошибку.

 from tkinter import Tk, Canvas
 
root = Tk()
root.minsize(width=300, height=300)
root.resizable(0, 0)
c = Canvas(root, width=300, height=300)
c.pack()
line1 = c.create_line(100, 100, 200, 100)
 
def Right(event):
    line1_coords = c.coords(line1)
    if event.keysym == 'Up':
        y = -9
    elif event.keysym == 'Down':
        y = 9
 
    line1_coords[3] += y
    c.coords(line1, line1_coords)
 
 
c.bind_all('<KeyPress-Up>', Right)
c.bind_all('<KeyPress-Down>', Right)
root.mainloop()

Офлайн

#7 Янв. 5, 2021 16:55:11

simonovaleksandr
Зарегистрирован: 2020-08-17
Сообщения: 21
Репутация: +  0  -
Профиль   Отправить e-mail  

Помогите найти ошибку.

.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version