Bạn có thể sử dụng một mã dòng nhập và đơn như thế này:
import ctypes # An included library with Python install.
ctypes.windll.user32.MessageBoxW[0, "Your text", "Your title", 1]
Hoặc xác định hàm [mbox] như vậy:
import ctypes # An included library with Python install.
def Mbox[title, text, style]:
return ctypes.windll.user32.MessageBoxW[0, text, title, style]
Mbox['Your title', 'Your text', 1]
Lưu ý các kiểu như sau:
## Styles:
## 0 : OK
## 1 : OK | Cancel
## 2 : Abort | Retry | Ignore
## 3 : Yes | No | Cancel
## 4 : Yes | No
## 5 : Retry | Cancel
## 6 : Cancel | Try Again | Continue
Chúc vui vẻ!
Lưu ý: Đã chỉnh sửa để sử dụng
## Styles:
## 0 : OK
## 1 : OK | Cancel
## 2 : Abort | Retry | Ignore
## 3 : Yes | No | Cancel
## 4 : Yes | No
## 5 : Retry | Cancel
## 6 : Cancel | Try Again | Continue
7 thay vì ## Styles:
## 0 : OK
## 1 : OK | Cancel
## 2 : Abort | Retry | Ignore
## 3 : Yes | No | Cancel
## 4 : Yes | No
## 5 : Retry | Cancel
## 6 : Cancel | Try Again | Continue
8Đã trả lời ngày 7 tháng 3 năm 2013 lúc 15:43Mar 7, 2013 at 15:43
17
Bạn đã nhìn vào EasyGui?
import easygui
easygui.msgbox["This is a message!", title="simple gui"]
Đã trả lời ngày 3 tháng 6 năm 2010 lúc 5:54Jun 3, 2010 at 5:54
Ryan Ginstromryan GinstromRyan Ginstrom
13.7K5 Huy hiệu vàng44 Huy hiệu bạc60 Huy hiệu đồng5 gold badges44 silver badges60 bronze badges
2
Mã bạn trình bày là tốt! Bạn chỉ cần tạo rõ ràng "cửa sổ khác trong nền" và ẩn nó, với mã này:
import Tkinter
window = Tkinter.Tk[]
window.wm_withdraw[]
Ngay trước khi hộp thư của bạn.
Đã trả lời ngày 25 tháng 8 năm 2010 lúc 22:44Aug 25, 2010 at 22:44
JotafjotafJotaf
4914 Huy hiệu bạc5 Huy hiệu Đồng4 silver badges5 bronze badges
1
Ngoài ra, bạn có thể định vị cửa sổ khác trước khi rút nó để bạn định vị tin nhắn của mình
#!/usr/bin/env python
from Tkinter import *
import tkMessageBox
window = Tk[]
window.wm_withdraw[]
#message at x:200,y:200
window.geometry["1x1+200+200"]#remember its .geometry["WidthxHeight[+or-]X[+or-]Y"]
tkMessageBox.showerror[title="error",message="Error Message",parent=window]
#centre screen message
window.geometry["1x1+"+str[window.winfo_screenwidth[]/2]+"+"+str[window.winfo_screenheight[]/2]]
tkMessageBox.showinfo[title="Greetings", message="Hello World!"]
Đã trả lời ngày 16 tháng 7 năm 2011 lúc 11:03Jul 16, 2011 at 11:03
2
Mô -đun PyMSGBox thực hiện chính xác điều này. Nó có các hàm hộp thông báo tuân theo các quy ước đặt tên của JavaScript: alert [], xác nhận [], nhắc [] và mật khẩu [] [đó là nhắc nhở [] nhưng sử dụng * khi bạn nhập]. Các cuộc gọi chức năng này chặn cho đến khi người dùng nhấp vào nút OK/Hủy. Đó là một mô-đun Python thuần túy, thuần túy không có sự phụ thuộc bên ngoài Tkinter.
Cài đặt với:
## Styles:
## 0 : OK
## 1 : OK | Cancel
## 2 : Abort | Retry | Ignore
## 3 : Yes | No | Cancel
## 4 : Yes | No
## 5 : Retry | Cancel
## 6 : Cancel | Try Again | Continue
9Sử dụng mẫu:
import pymsgbox
pymsgbox.alert['This is an alert!', 'Title']
response = pymsgbox.prompt['What is your name?']
Tài liệu đầy đủ tại //pymsgbox.readthedocs.org/en/latest/
Roelant
4.0271 Huy hiệu vàng27 Huy hiệu bạc57 Huy hiệu đồng1 gold badge27 silver badges57 bronze badges
Đã trả lời ngày 4 tháng 9 năm 2014 lúc 0:09Sep 4, 2014 at 0:09
Al Sweigartal SweigartAl Sweigart
10.3k9 Huy hiệu vàng61 Huy hiệu bạc86 Huy hiệu Đồng9 gold badges61 silver badges86 bronze badges
4
import ctypes
ctypes.windll.user32.MessageBoxW[0, "Your text", "Your title", 1]
Số cuối cùng [ở đây 1] có thể thay đổi để thay đổi kiểu cửa sổ [không chỉ các nút!]:
## Button styles:
# 0 : OK
# 1 : OK | Cancel
# 2 : Abort | Retry | Ignore
# 3 : Yes | No | Cancel
# 4 : Yes | No
# 5 : Retry | No
# 6 : Cancel | Try Again | Continue
## To also change icon, add these values to previous number
# 16 Stop-sign icon
# 32 Question-mark icon
# 48 Exclamation-point icon
# 64 Information-sign icon consisting of an 'i' in a circle
Ví dụ,
ctypes.windll.user32.MessageBoxW[0, "That's an error", "Warning!", 16]
sẽ cho cái này:
not2qubit
12.6K7 Huy hiệu vàng87 Huy hiệu bạc118 Huy hiệu đồng7 gold badges87 silver badges118 bronze badges
Đã trả lời ngày 19 tháng 1 năm 2018 lúc 20:34Jan 19, 2018 at 20:34
ArkelisarkelisArkelis
9035 Huy hiệu bạc12 Huy hiệu đồng5 silver badges12 bronze badges
Trên Mac, thư viện tiêu chuẩn Python có một mô -đun gọi là
import easygui
easygui.msgbox["This is a message!", title="simple gui"]
0. Ngoài ra còn có phiên bản Windows [dựa trên CTYPES] tại //www.averdevelopment.com/python/asydialogs.htmlNếu nó quan trọng với bạn: nó sử dụng các hộp thoại gốc và không phụ thuộc vào tkinter như
import easygui
easygui.msgbox["This is a message!", title="simple gui"]
1 đã được đề cập, nhưng nó có thể không có nhiều tính năng.Đã trả lời ngày 3 tháng 6 năm 2010 lúc 11:52Jun 3, 2010 at 11:52
StevenstevenSteven
27.2K5 Huy hiệu vàng60 Huy hiệu bạc 50 Huy hiệu Đồng5 gold badges60 silver badges50 bronze badges
Trong Windows, bạn có thể sử dụng CTYPE với Thư viện User32:
import ctypes # An included library with Python install.
def Mbox[title, text, style]:
return ctypes.windll.user32.MessageBoxW[0, text, title, style]
Mbox['Your title', 'Your text', 1]
0
nbro
14.4K27 Huy hiệu vàng104 Huy hiệu bạc188 Huy hiệu đồng27 gold badges104 silver badges188 bronze badges
Đã trả lời ngày 3 tháng 6 năm 2010 lúc 5:59Jun 3, 2010 at 5:59
BạnYOU
Huy hiệu vàng 116K3232 gold badges184 silver badges216 bronze badges
0
Bạn có thể sử dụng
import easygui
easygui.msgbox["This is a message!", title="simple gui"]
2 hoặc import easygui
easygui.msgbox["This is a message!", title="simple gui"]
3:import ctypes # An included library with Python install.
def Mbox[title, text, style]:
return ctypes.windll.user32.MessageBoxW[0, text, title, style]
Mbox['Your title', 'Your text', 1]
1Sử dụng
import easygui
easygui.msgbox["This is a message!", title="simple gui"]
3 giống như sử dụng import easygui
easygui.msgbox["This is a message!", title="simple gui"]
2:import ctypes # An included library with Python install.
def Mbox[title, text, style]:
return ctypes.windll.user32.MessageBoxW[0, text, title, style]
Mbox['Your title', 'Your text', 1]
2Đã trả lời ngày 29 tháng 12 năm 2019 lúc 5:59Dec 29, 2019 at 5:59
Một số chàng traiSome Guy
3381 Huy hiệu Bạc6 Huy hiệu Đồng1 silver badge6 bronze badges
Sử dụng
import ctypes # An included library with Python install.
def Mbox[title, text, style]:
return ctypes.windll.user32.MessageBoxW[0, text, title, style]
Mbox['Your title', 'Your text', 1]
3Cửa sổ chính phải được tạo trước đó. Đây là cho Python 3. Đây không phải là fot wxpython, mà là cho tkinter.
Đã trả lời ngày 22 tháng 12 năm 2013 lúc 9:16Dec 22, 2013 at 9:16
1
import ctypes # An included library with Python install.
def Mbox[title, text, style]:
return ctypes.windll.user32.MessageBoxW[0, text, title, style]
Mbox['Your title', 'Your text', 1]
4
Sanoob
2.4063 huy hiệu vàng28 Huy hiệu bạc36 Huy hiệu đồng3 gold badges28 silver badges36 bronze badges
Đã trả lời ngày 11 tháng 3 năm 2014 lúc 12:58Mar 11, 2014 at 12:58
1
Ngoài ra, bạn có thể định vị cửa sổ khác trước khi rút nó để bạn định vị tin nhắn của mình
import ctypes # An included library with Python install.
def Mbox[title, text, style]:
return ctypes.windll.user32.MessageBoxW[0, text, title, style]
Mbox['Your title', 'Your text', 1]
5Đã trả lời ngày 16 tháng 7 năm 2011 lúc 11:03
import ctypes # An included library with Python install.
def Mbox[title, text, style]:
return ctypes.windll.user32.MessageBoxW[0, text, title, style]
Mbox['Your title', 'Your text', 1]
6Mô -đun PyMSGBox thực hiện chính xác điều này. Nó có các hàm hộp thông báo tuân theo các quy ước đặt tên của JavaScript: alert [], xác nhận [], nhắc [] và mật khẩu [] [đó là nhắc nhở [] nhưng sử dụng * khi bạn nhập]. Các cuộc gọi chức năng này chặn cho đến khi người dùng nhấp vào nút OK/Hủy. Đó là một mô-đun Python thuần túy, thuần túy không có sự phụ thuộc bên ngoài Tkinter.Sep 28, 2019 at 17:37
Cài đặt với:
## Styles:
## 0 : OK
## 1 : OK | Cancel
## 2 : Abort | Retry | Ignore
## 3 : Yes | No | Cancel
## 4 : Yes | No
## 5 : Retry | Cancel
## 6 : Cancel | Try Again | Continue
9HexiroSử dụng mẫu:3 silver badges8 bronze badges
Tài liệu đầy đủ tại //pymsgbox.readthedocs.org/en/latest/
Roelant
import ctypes # An included library with Python install.
def Mbox[title, text, style]:
return ctypes.windll.user32.MessageBoxW[0, text, title, style]
Mbox['Your title', 'Your text', 1]
74.0271 Huy hiệu vàng27 Huy hiệu bạc57 Huy hiệu đồng
Đã trả lời ngày 4 tháng 9 năm 2014 lúc 0:09
import ctypes # An included library with Python install.
def Mbox[title, text, style]:
return ctypes.windll.user32.MessageBoxW[0, text, title, style]
Mbox['Your title', 'Your text', 1]
8Al Sweigartal Sweigart
10.3k9 Huy hiệu vàng61 Huy hiệu bạc86 Huy hiệu Đồng
import ctypes # An included library with Python install.
def Mbox[title, text, style]:
return ctypes.windll.user32.MessageBoxW[0, text, title, style]
Mbox['Your title', 'Your text', 1]
9Số cuối cùng [ở đây 1] có thể thay đổi để thay đổi kiểu cửa sổ [không chỉ các nút!]:
Ví dụ,Aug 16, 2020 at 15:42
WinEunuuchs2UnixWinEunuuchs2UnixWinEunuuchs2Unix
1 gold badge15 silver badges29 bronze badgesctypes.windll.user32.MessageBoxW[0, "That's an error", "Warning!", 16]
sẽ cho cái này:
## Styles:
## 0 : OK
## 1 : OK | Cancel
## 2 : Abort | Retry | Ignore
## 3 : Yes | No | Cancel
## 4 : Yes | No
## 5 : Retry | Cancel
## 6 : Cancel | Try Again | Continue
012.6K7 Huy hiệu vàng87 Huy hiệu bạc118 Huy hiệu đồngSep 22, 2021 at 9:35
Đã trả lời ngày 19 tháng 1 năm 2018 lúc 20:34
## Styles:
## 0 : OK
## 1 : OK | Cancel
## 2 : Abort | Retry | Ignore
## 3 : Yes | No | Cancel
## 4 : Yes | No
## 5 : Retry | Cancel
## 6 : Cancel | Try Again | Continue
1ArkelisarkelisJul 15, 2015 at 20:12
1
9035 Huy hiệu bạc12 Huy hiệu đồng
Trên Mac, thư viện tiêu chuẩn Python có một mô -đun gọi là
import easygui
easygui.msgbox["This is a message!", title="simple gui"]
0. Ngoài ra còn có phiên bản Windows [dựa trên CTYPES] tại //www.averdevelopment.com/python/asydialogs.htmlNếu nó quan trọng với bạn: nó sử dụng các hộp thoại gốc và không phụ thuộc vào tkinter như
import easygui
easygui.msgbox["This is a message!", title="simple gui"]
1 đã được đề cập, nhưng nó có thể không có nhiều tính năng.Jul 28, 2015 at 16:21
Jerry Tjerry tJerry T
1.49019 huy hiệu bạc16 Huy hiệu đồng19 silver badges16 bronze badges
Một phiên bản hộp tin nhắn gần đây là mô -đun Prompt_box. Nó có hai gói: cảnh báo và tin nhắn. Tin nhắn cung cấp cho bạn quyền kiểm soát tốt hơn đối với hộp, nhưng mất nhiều thời gian hơn để gõ.
Ví dụ Mã cảnh báo:
## Styles:
## 0 : OK
## 1 : OK | Cancel
## 2 : Abort | Retry | Ignore
## 3 : Yes | No | Cancel
## 4 : Yes | No
## 5 : Retry | Cancel
## 6 : Cancel | Try Again | Continue
2Ví dụ Mã tin nhắn:
## Styles:
## 0 : OK
## 1 : OK | Cancel
## 2 : Abort | Retry | Ignore
## 3 : Yes | No | Cancel
## 4 : Yes | No
## 5 : Retry | Cancel
## 6 : Cancel | Try Again | Continue
3Đã trả lời ngày 8 tháng 6 năm 2019 lúc 20:24Jun 8, 2019 at 20:24
Mô -đun Ctype với luồng
Tôi đã sử dụng Tkinter MessageBox nhưng nó sẽ làm hỏng mã của tôi. Thay vào đó, tôi không muốn tìm hiểu lý do tại sao vì vậy tôi đã sử dụng mô -đun CTYPES thay thế.ctypes module instead.
Ví dụ:
import ctypes
ctypes.windll.user32.MessageBoxW[0, "Your text", "Your title", 1]
Tôi đã nhận được mã đó từ ArkelisArkelis
Tôi thích rằng nó đã không làm hỏng mã nên tôi đã làm việc với nó và thêm một luồng để mã sau khi chạy.
Ví dụ cho mã của tôi
## Styles:
## 0 : OK
## 1 : OK | Cancel
## 2 : Abort | Retry | Ignore
## 3 : Yes | No | Cancel
## 4 : Yes | No
## 5 : Retry | Cancel
## 6 : Cancel | Try Again | Continue
5Đối với các kiểu nút và số biểu tượng:
## Styles:
## 0 : OK
## 1 : OK | Cancel
## 2 : Abort | Retry | Ignore
## 3 : Yes | No | Cancel
## 4 : Yes | No
## 5 : Retry | Cancel
## 6 : Cancel | Try Again | Continue
6Đã trả lời ngày 2 tháng 12 năm 2019 lúc 19:21Dec 2, 2019 at 19:21