Как установить для элемента Gtk Label определенный размер в Python? - PullRequest
0 голосов
/ 15 марта 2020

Я пытаюсь сделать табло для крикета Gtk Python Приложение. В части табло, которую я бы показывал игрокам, я хотел бы сделать счет действительно большим (больше, чем вставка элемента <big>). Интересно, можно ли установить размер с помощью числа.

Вот мой код:

from gi.repository import Gtk

Runs = 0
Wickets = 0
Batter1 = 0
Batter2 = 0
Strike = 1
Balls = 0
Overs = 0

class Window(Gtk.Window):

    def __init__(self):
        Gtk.Window.__init__(self, title="Scoreboard")
        self.set_border_width(20)
        self.set_default_size(500, 300)

        self.type = 0

        self.grid = Gtk.Grid()
        self.add(self.grid)

    def EndGame(self):
        Game = "Ended"

    def GetType(self, Type):
        if Type == "Scoreboard":
            self.type = 1
        else:
            self.type = 2

    def Show(self):
        if self.type == 1:
            Score = Gtk.Label()
            Score.set_markup("<big>" + str(Runs) + "/" + str(Wickets) + "</big>")
            self.grid.add(Score)
        else:
            pass

    def Main(self):
        pass


WinOne = Window()
WinTwo = Window()
WinOne.GetType("Scoreboard")
WinTwo.GetType("Scorer")
while(1):
    WinTwo.Main()
    WinOne.Main()
    WinOne.Show()
    WinTwo.Show()
    WinOne.show_all()
    WinTwo.show_all()
    Gtk.main()

Кстати, эта программа еще далеко не завершена. Я только начал. Я просто пытаюсь сначала исправить эту часть.

Спасибо!

1 Ответ

1 голос
/ 15 марта 2020
def Show(self):
    if self.type == 1:
        Score = Gtk.Label()
        fontsize=10000
        Score.set_markup("<span size=\"{}\">{}/{}</span>".format(fontsize, Runs, Wickets))
        self.grid.add(Score)
    else:
        pass

Размер текста можно установить с помощью атрибутов size тега span, как показано в документации go, https://developer.gnome.org/pygtk/stable/pango-markup-language.html

<span size="10000">0/0</spance> устанавливает размер шрифта 10000. Обратите внимание на значение размера здесь.

size: размер шрифта в тысячных долях точки

...