Здравствуйте! Подскажите пожалуйста.
Есть овал:
from tkinter import *
root = Tk()
root.geometry('600x650+2100+350')
canvas = Canvas(root, width=600, height=650)
canvas.pack(fill=BOTH, expand=1)
canvas.create_oval(20, 20, 580, 580, fill="grey50")
root.mainloop()
1) Как сделать, чтобы окно при открытии имело положение четко по центру одного из монитора и было активным?
2) Как сделать, чтобы при изменении размера окна, овал тоже уменьшался или увеличивался?
Или как вариант не овал, а картинка. Короче полностью все объекты виджета должны пропорционально уменьшатся.
3) Как сделать, чтобы овал создавался точно по центру виджета?
Я так понял, что простого метода не существует и необходимо считывать размеры окна и всего остального?
Нужно чтобы было как в этом примере, но этот на PyQt5:#!/usr/bin/python3
# -*- coding: utf-8 -*-
from PyQt5.QtGui import QIcon
from PyQt5.QtWidgets import (
QApplication,
QWidget,
QLabel,
QLCDNumber
)
from PyQt5.QtCore import (
QTime,
QTimer
)
class Clock(QLCDNumber):
def __init__(self, digits=8, parent=None):
super(Clock, self).__init__(digits, parent)
self.setWindowTitle("Цифровые часы")
self.timer = QTimer()
self.timer.timeout.connect(self._update)
self.timer.start(1000)
self.setWindowIcon(QIcon('Clock_2.png'))
def _update(self):
time = QTime.currentTime().toString()
self.display(time)
if __name__ == '__main__':
import sys
app = QApplication([])
w = Clock()
w.show()
w.resize(300, 100)
sys.exit(app.exec_())