반응형
개요
프로그램에서 시작메뉴 우측 하단 알림영역에 공지 메시지를 띄워야 하는 경우가 있다. 예를 들어, 새로운 이메일이 도착했거나, 새로운 메시지, 시스템 업데이트, 혹은 보안경고 등을 알려야 하는 경우이다. 이런 경우에 Notification Message 기능을 활용하는 법을 알아보자.
wx.adv.NotificationMessage
공지 메시지 클래스는 기능이 꽤 유용한 데 비해 선언이 매우 쉽다.
noti = wx.adv.NotificationMessage("알림", message="알림 메시지 입니다!",
parent=None, flags=wx.ICON_INFORMATION)
noti.Show()
우선 wx.adv.NotificationMessage에 인수를 전달해준다. 인수의 순서는 title, message, parent, flag 순서이다. 그리고 마지막으로 .Show()를 해 주면 끝이다. 알림영역에 뜨는 공지창은 아래와 같은 형식인데, 맨 위에 "Python"으로 뜨는 것은 신경쓰지 않아도 된다. 나중에 pyinstaller로 exe파일을 만들고 나면, 해당 exe파일의 이름으로 바뀌게 된다.
예제
혹시 아래 예제를 실행시키고 나서 글자의 해상도가 매우 떨어져 보여 흉하다면, 중간에 모니터 스크린의 해상도를 제대로 찾아주면 되는 일인데, 네 줄 코드로 개선할 수 있다.
반응형
import ctypes
try:
ctypes.windll.shcore.SetProcessDpiAwareness(True)
except:
pass
예제가 간단하므로 바로 Ctrl+C/V 해서 확인해보자.
import wx
from wx.adv import *
class Example(wx.Frame):
def __init__(self, parent, id):
wx.Frame.__init__(self,parent,id,'Notification Message', size=(350,150))
# 사용자 코드
panel = wx.Panel(self, -1)
st = wx.StaticText(panel, -1, "Notification Message 예제\n스크린 우측 하단 알림영역에서 확인가능!")
font = wx.Font(15, wx.FONTFAMILY_DEFAULT, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_BOLD)
st.SetFont(font)
bsizer = wx.BoxSizer(wx.HORIZONTAL)
bsizer.Add(st, -1, wx.EXPAND|wx.ALL, 10)
noti = wx.adv.NotificationMessage("알림", message="알림 메시지 입니다!", parent=None, flags=wx.ICON_INFORMATION)
noti.Show()
panel.SetSizer(bsizer)
if __name__=="__main__":
app = wx.App()
frame=Example(parent=None, id=-1)
frame.Show()
app.MainLoop()
도움되셨다면 하트(♥) 부탁드리고, 더 궁금한 사항은 댓글로 남겨주세요 :)
반응형
'wxPython' 카테고리의 다른 글
파이썬GUI, 개발자 정보 입력, 파이썬 개발자 정보 AboutBox (0) | 2023.06.02 |
---|---|
파이썬 GUI, 글자 해상도 선명하게 바꾸기, 해상도, DPI 조절 (0) | 2023.05.26 |
파이썬 GUI, Matplotlib 그래프, 차트, 이미지 띄우기 (0) | 2023.05.03 |
파이썬 GUI, 로딩시 로고화면 넣기, 스플래시 스크린 Advanced Splash (0) | 2023.04.30 |
파이썬 GUI, Aui툴바 AuiToolBar (0) | 2023.04.29 |