1. 程式人生 > >Python3 tkinter基礎 Canvas bind 鼠標左鍵點擊時,在當前位置畫橢圓形

Python3 tkinter基礎 Canvas bind 鼠標左鍵點擊時,在當前位置畫橢圓形

分享圖片 Language nbsp mark qt5 guide ron 理解 代碼

?

  • python : 3.7.0
  • OS : Ubuntu 18.04.1 LTS
  • IDE : PyCharm 2018.2.4
  • conda : 4.5.11
  • type setting : Markdown

?

code

"""
@Author : 行初心
@Date   : 18-9-30
@Blog   : www.cnblogs.com/xingchuxin
@GitHub : github.com/GratefulHeartCoder
"""
from tkinter import *


def main():
    root = Tk()
    w = Canvas(root, width=200, height=200, background=‘white‘)
    w.pack()

    def _paint(event):
        # event.x 鼠標左鍵的橫坐標
        # event.y 鼠標左鍵的縱坐標
        x1, y1 = (event.x - 1), (event.y - 1)
        x2, y2 = (event.x + 1), (event.y + 1)
        w.create_oval(x1, y1, x2, y2, fill=‘red‘)

    # 鼠標左鍵一點,就畫出了一個小的橢圓

    # 畫布與鼠標左鍵進行綁定
    w.bind("<B1-Motion>", _paint)

    mainloop()


if __name__ == ‘__main__‘:
    main()

?

result

技術分享圖片

?

reference

  • [文檔] https://docs.python.org/3/library/tkinter.html

?

resource

  • [文檔] https://docs.python.org/3/
  • [規範] https://www.python.org/dev/peps/pep-0008/
  • [規範] https://zh-google-styleguide.readthedocs.io/en/latest/google-python-styleguide/python_language_rules/
  • [源碼] https://www.python.org/downloads/source/
  • [ PEP ] https://www.python.org/dev/peps/
  • [平臺] https://www.cnblogs.com/

?


Python具有開源、跨平臺、解釋型和交互式等特性,值得學習。
Python的設計哲學:優雅,明確,簡單。提倡用一種方法,最好是只有一種方法來做一件事。
GUI可以選擇PyQt5、PySide2、wxPython、PyGObject、wxWidgets等進行創作。
代碼的書寫要遵守規範,這樣有助於溝通和理解。
每種語言都有獨特的思想,初學者需要轉變思維、踏實踐行、堅持積累。

Python3 tkinter基礎 Canvas bind 鼠標左鍵點擊時,在當前位置畫橢圓形