Python 기초 학습 의 기이 한 GUI 대화 상자

1.예 쁜 태그 그림 과 단추 그림
이 탭 의 설정 config 는 office 의 조작 에 익숙 하 다 면 어렵 지 않 을 것 입 니 다.텍스트 의 글꼴,색상,글꼴,그리고 라벨 의 높이 너비 등 을 모방 하여 라벨 을 만 드 는 복사 본 py 파일 은 다음 과 같 습 니 다.
서 류 는 나의 pywenjianjia 아래 에 있다.

from tkinter import *
root = Tk()
labelfont = ('times', 28, 'bold')
widget = Label(root, text='Hello tkinter world, I came here!')
widget.config(bg='black', fg='yellow')
widget.config(font=labelfont)
widget.config(height=5, width=40)
widget.pack(expand=YES, fill=BOTH)
root.mainloop()
아 톰 의 packages 에서 python runner 를 누 르 면 이 파일 이 실 행 됩 니 다.
在这里插入图片描述
동적 인 단추 그림 을 만 들 고 싶다 면 button.py 파일 을 사용 하 셔 도 됩 니 다.또한 복사 한 py 파일 입 니 다.

 from tkinter import *
widget = Button(text='BUTTON', padx=20, pady=20)
widget.pack(padx=30, pady=30)
widget.config(cursor='gumby')
widget.config(bd=8, relief=RAISED)
widget.config(bg='dark green', fg='white')
widget.config(font=('helvetica', 24, 'underline italic'))
mainloop()
아 톰 의 packages 에서 python runner 를 누 르 면 이 파일 이 실 행 됩 니 다.
예 쁘 고 컬러 있 으 며 누 를 수 있 는 버튼 그림
在这里插入图片描述
2.창 프로 토 콜 과 창 맨 위
젊 은 시절 에 그 교 재 를 쓸 때 visio 그림 그리 기 를 배 우 는 데 시간 이 좀 걸 렸 는데 그 때 는 visio 소프트웨어 가 평면 적 인 분 층 노력 에 탄복 했다.평면 적 인 느낌 만 주 는 스크린 이지 만 이상 한 것 을 많이 그 릴 수 있 고 한 층 한 층 씩 겹 쳐 놓 을 수 있 으 며 서로 다른 색 채 를 설정 할 수 있 습 니 다.프로 그래 밍 을 여기까지 배 웠 습 니 다.과거 에 그 이상 한 느낌 은 몇 년 동안 컴퓨터 기술 이 계속 업그레이드 되 었 기 때문에 이상 한 것 이 많 았 습 니 다.하지만 GUI 의 그림 을 접 하기 위해 서 는 깜짝 놀 라 움 을 주 고 이 판 타지 평면 스크린,그리고 해당 하 는 협의 가 작용 하고 있다 는 것 을 알려 줘 야 한다.나 는 이 협 의 를 협의 라 고 부 르 는데 반드시 협의 각 측의 약속 이 있 고 GUI 를 뛰 어 넘 는 것 이 라 고 생각 했 는데 원래 py 코드 의 GUI 파일 이 었 다.
그리고 이 파일 은 또 하나의 괴이 한 점 이 있 습 니 다.교재 의 안배 에 따라 그것 을 실행 하고 싶 으 면 파일 에 오류 가 표 시 됩 니 다.그러나 여러 가지 방법 을 떠 보 는 것 은 여전히 잘못된 것 같다.교재 텍스트 를 돌 이 켜 보면 창 아이콘 의 한 절 에 암시 가 있 는 것 같 습 니 다.차라리 그 iconbitmap 코드 줄,즉 그 18 줄 코드 를 없 애 면 파일 이 실 행 될 수 있 습 니 다.
파일 의 주석 을 보 여 주 는 것 은 프로 토 콜 텍스트 의 맛 이 있 습 니 다.이것 은 아마도 프로 토 콜 의 주요 내용 일 것 입 니 다.총 28 줄 의 코드 파일 을 먼저 드 리 겠 습 니 다.

"""
      ,destroy()       ,quit()       .
       、  、    ,            。 
       ,     /   。toplevel  frame,   
         。
"""
from tkinter import *
root = Tk()    #     

trees = [('The tkinter   !',        'light blue'),
        ('The Paint!',          'light green'),
        ('The Giant wetearth !', 'red')]

for(tree, color) in trees:
    win = Toplevel(root)                              #    
    win.title('Sing...')                              #    
    win.protocol('WM_DELETE_WINDOW', lambda:None)     #    
    win.iconbitmap('py-blue-trans-out.ico')           #   Tk,        

    msg = Button(win, text=tree, command=win.destroy) #    win
    msg.pack(expand=YES, fill=BOTH)
    msg.config(padx=10, pady=10, bd=10, relief=RAISED)
    msg.config(bg='black', fg=color, font=('times', 30, 'bold italic'))

root.title('Lumberjack demo')
Label(root, text='Main window', width=30).pack()
Button(root, text='Quit All', command=root.quit).pack() #      
root.mainloop()
이 파일 을 실행 하면 다음 과 같은 결과 가 나타 납 니 다.

Traceback (most recent call last):
  File "C:\Users\zzx21\GUI\Tour\toplevel2.py", line 18, in <module>
    win.iconbitmap('py-blue-trans-out.ico')           #   Tk,        
  File "C:\Users\zzx21\pywenjianjia\lib\tkinter\__init__.py", line 2080, in wm_iconbitmap
    return self.tk.call('wm', 'iconbitmap', self._w, bitmap)
_tkinter.TclError: bitmap "py-blue-trans-out.ico" not defined

C:\Users\zzx21\GUI\Tour>
현재 줄 을 빼 면 18,세 개의 창 단추 가 모두 나타 나 고 quit 아이콘 도 추가 되 어 있 습 니 다.셸 의 이동 알림 부 호 를 사용 하면 이 파일 들 은 화면 에 놓 고 싶 은 곳 으로 이동 할 수 있어 재 미 있 습 니 다.
在这里插入图片描述
3.표준 대화 상 자 는 모드 대화 상자 입 니 다.
컴퓨터 언어 도 논리학 의 일부 용 어 를 자주 사용한다.tkinter 여행 에서 말 한 대화 상 자 는 모드 대화 상자 와 비 모드 대화 상자 가 있다.이것 은 마치 py 언어 와 논리 사이 의 거 리 를 좁 히 는 것 같 아서 약간의 인연 의 느낌 을 준다.당신 은 현대 논리 역사 에 대해 조금 만 이해 하면 알 수 있 습 니 다.20 세기 초 에 성숙 한 현대 논리 가 20 년대 에 와 서 전형 적 인 논리 와 약간 변 이 된 논리 가 나 타 났 습 니 다.그것 은 바로 비 전형 적 인 모드 논리 입 니 다.미국 학자 C.I.루이스 는 시스템 을 엄 격 히 포함 하 는 S1-S5 를 구 조 했 습 니 다.지금 말 하 는 모드 논리 가 생 겼 습 니 다.학명 은 modal logic 라 고 합 니 다.대화 상자 에서 언급 한 모드 대화 상자 와 비 모드 대화 상자 의 모드 라 는 단어의 영어 가 바로 이 modal 입 니 다.그러나 좀 더 깊이 들 어가 면 이곳 의 모드 적 modal 과 논리의 modal 은 아무런 관련 이 없 는 것 같 습 니 다.단지 단어 사용 에 있어 서 의 우연 한 일치 일 뿐 입 니 다.
교재 의 사 고 를 따라 먼저 표준 대화 상 자 를 기본 적 으로 이해 하면 이런 우연 의 일치 에 대해 설명 할 수 있 을 것 이다.
표준 대화 상 자 는 일반 대화 상자 라 고도 부 르 는데,이러한 대화 상자 도 모드 적 이다.이 대화 상 자 는 다른 화면 을 막 을 수 있 습 니 다.이 화면 들 은 사용자 가 이 대화 상 자 를 닫 을 때 만 돌아 올 수 있 습 니 다.따라서 표준 대화 상자 나 모드 대화 상 자 는 화면 에 나타 나 면 다른 창 인터페이스 를 강제로 가 립 니 다.왜 이것 이 modal 의 것 입 니까?제 가 modal 에 대한 이해 로 는 modal 의 의미 가 전혀 없 는 것 같 습 니 다.논리 에서 의 모드 는 항상 서로 정 의 된 모드 어 를 가리 키 기 때문이다.예 를 들 어 필연 과 가능성,마 땅 히 금지 해 야 하 는 등 이곳 의 행위 적 의미 가 없 는 것 같다.그리고 그 의 미 를 실례 적 인 모드 대화 상자 로 표시 합 시다.modal 은 여기 서 의 의 미 는 약간 모호 하지만,실례 의 출현 은 우리 가 그것 에 대한 미혹 을 해소 할 것 이다.python 의 모드 와 논리 적 모드 가 다 를 수 있 습 니 다.한 단어 가 사용 하 는 우연 한 일치 일 뿐 입 니 다.
표준 대화 상자 dIg1.pyw,

from tkinter import *
from tkinter.messagebox import *

def callback():
    if askyesno('Verify', 'Do you really want to quit?'):
        showwarning('Yes', 'Quit not yet implemented')
    else:
        showinfo('No', 'Quit has been cancellled')

errmsg = 'Sorry, no Spam allowed!'
Button(text='  ', command=callback).pack(fill=X)
Button(text='  ', command=(lambda: showerror('Spam', errmsg))).pack(fill=X)
mainloop()
나 는 중국어 버튼 으로 영어 버튼 을 바 꾸 었 는데 중국어 대화 상자 가 나 타 났 다.이 대화 상자 단 추 는 누 르 고 선택 할 수 있 습 니 다.다음 두 그림 입 니 다.
탈퇴 를 누 르 면 다음 과 같은 선택 이 있 습 니 다.
在这里插入图片描述
쓰레기 에 따라 다음 과 같은 선택 이 있 습 니 다.
在这里插入图片描述
4.표준 대화 상자 의 다 중 표시 줄 사용
프 리 젠 테 이 션 시트 의 py 파일 을 먼저 만들어 모듈 로 반복 적 으로 사용 할 수 있 으 며 대화 상자 의 제작 을 다양 하 게 할 수 있 습 니 다.나 는 여전히 이 대화 상자 의 단 추 를 중국어 로 표시 한 다음 에 여러 개의 단추 표시 줄 파일 을 만 들 었 다.그래서 너 는 더 많은 기능 의 대화 상자 그림 을 보 았 다.파일 을 열 고 색상 을 선택 하 며 문자 등 을 입력 할 수 있 는 대화 상자모든 코드 의 기능 을 명확 하 게 이해 하고 아직 불 이 나 지 않 았 지만,마침내 조롱박 에 따라 이 액자 와 그 작용 을 표면화 할 수 있 게 되 었 다.
데모 단추 가 모인 py 파일 demodig.py

from tkinter import *
from dialogTable import demos
from quitter import Quitter

class Demo(Frame):
    def __init__(self, parent=None, **options):
        Frame.__init__(self, parent, **options)
        self.pack()
        Label(self, text='Basic demos').pack()
        for (key, value) in demos.items():
            Button(self, text=key, command=value).pack(side=TOP, fill=BOTH)
        Quitter(self).pack(side=TOP, fill=BOTH)

if __name__=='__main__': Demo().mainloop()
이 파일 을 실행 하면 단추 표시 줄 대화 상자 가 나타 납 니 다.
在这里插入图片描述
열기 단 추 를 누 르 면 window 문서 파일 이 열 립 니 다.
在这里插入图片描述
색상 을 클릭 하면 색상 상자 에서 색상 을 선택 할 수 있 습 니 다.
在这里插入图片描述
입력 을 누 르 면 입력 상자 에 요구 에 따라 숫자 를 입력 할 수 있 습 니 다.
在这里插入图片描述
이 대화 상자 의 초보적인 이 해 는 꽤 사람들의 시 야 를 넓 혔 다.컴퓨터 과학 의 python 언어 로 서 자연 언어 를 뛰 어 넘 는 여러 가지 기능 이 있다.이 점 을 감안 하여 이 프로 그래 밍 언어 는 아무리 어려워 도 조금씩 꾸준히 배 워 야 한다.
파 이 썬 기초 학습 의 기이 한 GUI 대화 상자 에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.더 많은 파 이 썬 GUI 대화 상자 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보시 기 바 랍 니 다.앞으로 많은 응원 부 탁 드 리 겠 습 니 다!

좋은 웹페이지 즐겨찾기