1

文字列を右揃えにする方法を探しています。これは私のコードです:

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()何もないようです。私がプログラムを実行すると、彼らはまだ私が与えたポイントにテキストを中央揃えしており、そのポイントを正しく正当化していません。これに対する解決策が見つかりません。助けてください!

4

1 に答える 1

1

まず、列に最長の文字列を含めるのに十分な大きさの .rjust() のすべてに同じ幅を使用する必要があります。例えば14。

次に、プロポーショナル フォントでは文字単位で正確に整列できないため、固定幅フォントを使用する必要があります。

3 番目に、文字列ベースの .rjust() の代わりに、グラフィックス クラスの右揃え関数を使用する必要があります。このグラフィック クラスにはこの機能がないようですので、.rjust() と固定幅フォントを使用するか、別のグラフィック ライブラリを使用する必要があります。

お役に立てば幸いです。:)

于 2012-02-06T00:40:46.103 に答える