import ctypes
def pixel(x, y):
hdc = ctypes.windll.user32.GetDC(0)
color = ctypes.windll.gdi32.GetPixel(hdc, x, y)
# color is in the format 0xbbggrr https://msdn.microsoft.com/en-us/library/windows/desktop/dd183449(v=vs.85).aspx
r = color % 256
g = (color // 256) % 256
b = color // (256 ** 2)
ctypes.windll.user32.ReleaseDC(0, hdc)
return (r, g, b)
input()
i = 1
while True:
change = [pixel(200, 200)]
print(i, change)
i += 1
label = tk.Label(toolbarBottom, text='yo')
label.pack(side=tk.LEFT)
input
и print
, и да, конечно, этого достаточно для создания игры, например, монополию или текстовый квест можно так сделать, но зачем? там не будет ни графики, ни удобного интерфейса, да и сам процесс написания скорее всего будет неприятен и уныл. class MineLineEdit(QtWidgets.QLineEdit):
def __init__(self, text, parent=None):
super().__init__(text, parent)
self.setSizePolicy(QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred))
self.parent = parent
def sizeHint(self):
if not self.parent:
return super().sizeHint()
print(self.parent.size())
return self.parent.size()
<...>
self.dict_widgets[name] = MineLineEdit(text, self.dict_widgets[name.replace('edit', 'label')])
class MyDoubleValidator(QtGui.QDoubleValidator):
def __init__(self, *args):
super(MyDoubleValidator, self).__init__(*args)
def validate(self, string, number):
if not string:
return (QtGui.QValidator.Acceptable, string, number)
return QtGui.QDoubleValidator().validate(string, number)
validator = MyDoubleValidator()