Как правильно выровнять текст в графическом окне, используя Python? - PullRequest
0 голосов
/ 16 ноября 2011

Я ищу способ оправдать мою строку. Это мой код:

from graphics import*

def main():

    win = GraphWin("Simple Editor", 600, 400)
    win.setCoords(0,0,60,40)

    #Text - Filename
    s = "File Name:"
    s=s.rjust(10)
    text1 = Text(Point(10, 35), s)
    text1.draw(win)
    #Text - Keyword
    s1 = "Keyword:"
    s1=s1.rjust(8)
    text2 = Text(Point(10, 28), s1)
    text2.draw(win)
    #Text - Replace with
    s2 = "Replace with:"
    s2=s2.rjust(10)
    text2 = Text(Point(10, 21), s2)
    text2.draw(win)`


main()

Команды .rjust(), похоже, ничего не значат. Когда я запускаю программу, они по-прежнему центрируют текст в той точке, которую я им дал, и не правильно обосновывают эту точку зрения. Я не могу найти решение этой проблемы, пожалуйста, помогите!

1 Ответ

0 голосов
/ 06 февраля 2012

Во-первых, вы должны использовать одинаковую ширину для всех .rjust (), которая достаточно велика, чтобы содержать самую длинную строку в столбце.Например, 14.

Во-вторых, вы должны использовать шрифт фиксированной ширины, потому что с пропорциональными шрифтами вы не можете точно выровнять по символам.

В-третьих, вы должны использовать функцию выравнивания по правому краю графического класса вместона основе строки .rjust ().Кажется, у этого графического класса нет этой функциональности, поэтому вам следует использовать шрифты .rjust () и фиксированной ширины или другую графическую библиотеку.

Надеюсь, это поможет.:)

...