Tkinter에서 콘솔 로그를 "인쇄"하는 방법은 무엇입니까?

레오나르도 에체베리아

비슷한 질문을 몇 가지 읽었지만 대답이 없다고 생각합니다.

GUI에서 "실행"버튼을 클릭 한 후 10까지 세는 기본 코드가 있습니다.

from tkinter import *
from time import sleep

def count_to_10():
    for i in range(1,11):
        sleep(0.5)
        print(i)
        counter_label.after(0, counter_label.config(text=i))
    return

def GUI():
    root = Tk()

    run_button = Button(root, text="run", command=count_to_10)
    run_button.pack()

    global counter_label
    counter_label = Label(root, text="counter")
    counter_label.pack()

    root.mainloop()

GUI()

함수 counter_label에서 반복 할 때마다 텍스트가 1에서 10으로 변경 될 것으로 예상합니다 count_to_10. 레이블은 함수가 실행되는 동안이 아니라 반환 될 때 변경 됩니다.

콘솔 출력 :

1
2
3
4
5
6
7
8
9
10

라벨 변경 :

레이블은 함수가 끝난 후 한 번만 10으로 변경됩니다.

같은 결과가 다른 위젯 scrolledtext, Text,에도 적용됩니다.

함수가 실행되는 동안 레이블 (또는 텍스트 관련 위젯)을 변경하려면 어떻게해야합니까?

당신의 도움을 주셔서 감사합니다!

추신 : 마치 GUI에 콘솔 출력을 갖는 것과 같습니다.

밀란 발라 즈

x.after()방법 을 사용할 필요가 없습니다 . config또는 configure메서드를 사용하기 만하면됩니다 . counter_label.configure(text=i)다음 과 같이 루트가 메인 창을 업데이트하도록 root.update()해야합니다 . (루트는 전역이거나 인수로 전달되어야합니다).

완전한 코드 :

from tkinter import *
from time import sleep


def count_to_10():
    for i in range(1, 11):
        sleep(0.5)
        print(i)
        counter_label.configure(text=i)  # Update the text in "Label" widget.
        root.update()  # Let root update the main window.


def GUI():
    global root
    root = Tk()

    run_button = Button(root, text="run", command=count_to_10)
    run_button.pack()

    global counter_label
    counter_label = Label(root, text="counter")
    counter_label.pack()

    root.mainloop()


GUI()

GUI :

GUI

콘솔 출력 :

>>> python3 test.py 
1
2
3
4
5
6
7
8
9
10

노트 :

레이블이 한 번만 변경되었습니다 (카운터가 10 일 때). root은 업데이트 할 수없고 count_to_10함수가 반환 될 때 ( for루프 ) 업데이트되었으며 물론 마지막 숫자는 10.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

Intellij에서 콘솔에 로그를 인쇄하는 방법은 무엇입니까?

분류에서Dev

콘솔에서 C #으로 문자를 시각적으로 인쇄하는 방법은 무엇입니까?

분류에서Dev

Java를 사용하여 콘솔에서 PostgreSQL 쿼리 결과를 인쇄하는 방법은 무엇입니까?

분류에서Dev

jUnit의 콘솔에 인쇄되는 void 메서드를 테스트하는 방법은 무엇입니까?

분류에서Dev

js 콘솔에서 인쇄 할 "JSON diff"를 생성하는 방법은 무엇입니까?

분류에서Dev

콘솔에서 CSV 파일을 인쇄하는 방법은 무엇입니까?

분류에서Dev

D- 언어 : 유니 코드 문자를 콘솔에 인쇄하는 방법은 무엇입니까?

분류에서Dev

Java : 콘솔과 파일에서 콘솔의 모든 출력을 인쇄하는 방법은 무엇입니까?

분류에서Dev

Dart / Flutter : 생성자에서 콘솔로 무언가를 인쇄하는 방법

분류에서Dev

인쇄 후 콘솔 응용 프로그램에서 텍스트 색상을 변경하는 방법은 무엇입니까?

분류에서Dev

Android Chromium에서 로그를 인쇄하는 방법은 무엇입니까?

분류에서Dev

콘솔에서 "오늘은 2014 년 5 월 22 일이고 오후 2시 4 분입니다"를 인쇄하는 방법은 무엇입니까?

분류에서Dev

kotlin을 사용하여 콘솔에서 x, y 좌표로 문자를 인쇄하는 방법은 무엇입니까?

분류에서Dev

WatchOS 6에서 크라운 입력을 콘솔로 인쇄하는 방법

분류에서Dev

콘솔에서 예외를 인쇄하는 방법은 무엇입니까? TestNG와 Maven을 사용하고 있습니다.

분류에서Dev

플랫폼 채널에서 호출 된 메서드에서 콘솔로 인쇄하는 방법은 무엇입니까?

분류에서Dev

콘솔에서 NumberAnimation을 통해 변경된 값을 인쇄하는 방법은 무엇입니까?

분류에서Dev

Ruby 컨트롤러를 사용하여 브라우저 콘솔에서 JSON 개체를 인쇄하는 방법은 무엇입니까?

분류에서Dev

Python 콘솔 입력의 최대 및 최소 수를 인쇄하는 방법은 무엇입니까?

분류에서Dev

파이썬에서 특정 줄을 읽고 텍스트 파일이나 콘솔 창에 데이터를 인쇄하는 방법은 무엇입니까?

분류에서Dev

IPython 콘솔이 너무 작아서 데이터를 인쇄 할 수 없습니다. 파일에 쓰는 방법은 무엇입니까?

분류에서Dev

ImageMagick "변환"도구를 사용하여 콘솔에 출력 파일 이름을 인쇄하는 방법은 무엇입니까?

분류에서Dev

ClojureScript에서 콘솔에 인쇄하기위한보다 관용적 인 방법은 무엇입니까?

분류에서Dev

HTML 태그에 "<"를 인쇄하는 방법은 무엇입니까?

분류에서Dev

HTML 태그에 "<"를 인쇄하는 방법은 무엇입니까?

분류에서Dev

그래프에서 DFS 방식으로 경로를 인쇄하는 방법은 무엇입니까?

분류에서Dev

R에서 pdf로 인쇄하는 동안 콘솔로 인쇄

분류에서Dev

R에서 pdf로 인쇄하는 동안 콘솔로 인쇄

분류에서Dev

iReport에서 가로로 인쇄하는 방법은 무엇입니까?

Related 관련 기사

  1. 1

    Intellij에서 콘솔에 로그를 인쇄하는 방법은 무엇입니까?

  2. 2

    콘솔에서 C #으로 문자를 시각적으로 인쇄하는 방법은 무엇입니까?

  3. 3

    Java를 사용하여 콘솔에서 PostgreSQL 쿼리 결과를 인쇄하는 방법은 무엇입니까?

  4. 4

    jUnit의 콘솔에 인쇄되는 void 메서드를 테스트하는 방법은 무엇입니까?

  5. 5

    js 콘솔에서 인쇄 할 "JSON diff"를 생성하는 방법은 무엇입니까?

  6. 6

    콘솔에서 CSV 파일을 인쇄하는 방법은 무엇입니까?

  7. 7

    D- 언어 : 유니 코드 문자를 콘솔에 인쇄하는 방법은 무엇입니까?

  8. 8

    Java : 콘솔과 파일에서 콘솔의 모든 출력을 인쇄하는 방법은 무엇입니까?

  9. 9

    Dart / Flutter : 생성자에서 콘솔로 무언가를 인쇄하는 방법

  10. 10

    인쇄 후 콘솔 응용 프로그램에서 텍스트 색상을 변경하는 방법은 무엇입니까?

  11. 11

    Android Chromium에서 로그를 인쇄하는 방법은 무엇입니까?

  12. 12

    콘솔에서 "오늘은 2014 년 5 월 22 일이고 오후 2시 4 분입니다"를 인쇄하는 방법은 무엇입니까?

  13. 13

    kotlin을 사용하여 콘솔에서 x, y 좌표로 문자를 인쇄하는 방법은 무엇입니까?

  14. 14

    WatchOS 6에서 크라운 입력을 콘솔로 인쇄하는 방법

  15. 15

    콘솔에서 예외를 인쇄하는 방법은 무엇입니까? TestNG와 Maven을 사용하고 있습니다.

  16. 16

    플랫폼 채널에서 호출 된 메서드에서 콘솔로 인쇄하는 방법은 무엇입니까?

  17. 17

    콘솔에서 NumberAnimation을 통해 변경된 값을 인쇄하는 방법은 무엇입니까?

  18. 18

    Ruby 컨트롤러를 사용하여 브라우저 콘솔에서 JSON 개체를 인쇄하는 방법은 무엇입니까?

  19. 19

    Python 콘솔 입력의 최대 및 최소 수를 인쇄하는 방법은 무엇입니까?

  20. 20

    파이썬에서 특정 줄을 읽고 텍스트 파일이나 콘솔 창에 데이터를 인쇄하는 방법은 무엇입니까?

  21. 21

    IPython 콘솔이 너무 작아서 데이터를 인쇄 할 수 없습니다. 파일에 쓰는 방법은 무엇입니까?

  22. 22

    ImageMagick "변환"도구를 사용하여 콘솔에 출력 파일 이름을 인쇄하는 방법은 무엇입니까?

  23. 23

    ClojureScript에서 콘솔에 인쇄하기위한보다 관용적 인 방법은 무엇입니까?

  24. 24

    HTML 태그에 "<"를 인쇄하는 방법은 무엇입니까?

  25. 25

    HTML 태그에 "<"를 인쇄하는 방법은 무엇입니까?

  26. 26

    그래프에서 DFS 방식으로 경로를 인쇄하는 방법은 무엇입니까?

  27. 27

    R에서 pdf로 인쇄하는 동안 콘솔로 인쇄

  28. 28

    R에서 pdf로 인쇄하는 동안 콘솔로 인쇄

  29. 29

    iReport에서 가로로 인쇄하는 방법은 무엇입니까?

뜨겁다태그

보관