IDLE を使用して、Windows 7 で Python 2.7 を学習しています。
垂直スクロール バーは正常に機能しますが、水平スクロール バーを有効にする方法が 見つかりません。
PythonのIDLEに水平スクロールバーはありますか?
ありがとう
IDLE を使用して、Windows 7 で Python 2.7 を学習しています。
垂直スクロール バーは正常に機能しますが、水平スクロール バーを有効にする方法が 見つかりません。
PythonのIDLEに水平スクロールバーはありますか?
ありがとう
IDLEの水平スクロールバー
http://code.activestate.com/lists/python-list/26878/から (私のコードではなく、このサイトで見つかりました)2000年3月8日水曜日の日付です
Python 2.6で動作しますが、2.7では動作しません。ファイルがどこかで開いているというエラーが表示されます。私の場合、彼が話しているファイルは次の場所にあります。C:\ Python27 \ ArcGIS10.1 \ Lib \ idlelib pythonに付属してインストールされているArcMapプログラムがない場合は、異なります。
私はついに、IDLEエディターウィンドウに水平スクロールバーを追加して、これらの長いコード行を取得するときに役立つようにしました。それらの変更はかなりミオナー(4行の新しいコード)であり、EditorWindow.pyモジュールで行われました。IDLEで変更を行うには、EditorWindow.pyを開き、EditorWindowクラスの
__init__
メソッドにある「vbar」の検索を実行します。それらに追加されたそれらの行を###
追加し、あなたがそれを持っているVOILA。残念ながら、スクロールバーはIDLE 0.5の行と列の情報の下に表示されます(ため息)。self.vbar = vbar = Scrollbar(top, name='vbar') self.hbar = hbar = Scrollbar(top, orient=HORIZONTAL, name='hbar') ### ... vbar['command'] = text.yview vbar.pack(side=RIGHT, fill=Y) hbar['command'] = text.xview ### hbar.pack(side=BOTTOM, fill=X) ### text['yscrollcommand'] = vbar.set text['xscrollcommand'] = hbar.set ###
これがお役に立てば幸いです。
ジョナサン・ポーリー
collins.rockwell.comのjwpolley
私は IDLE 2.7.3、Windows 7 を使用しています。中央のマウス ボタン/スクロール ホイールを押したままにして、そのようにカーソルを「ドラッグ」することで、水平方向にスクロールできます。
いいえ。 IDLE には、次の 2 つの理由から水平スクロールバーがありません。
私はまだ Python の専門家/第一人者ではないかもしれませんが、この質問は何よりもユーザー エクスペリエンス/ユーザビリティに関する質問です。「うん、PEP 8スタイルガイド...何とか何とか」と言う人もいるかもしれませんが、IDLEウィンドウを特定のサイズ(幅が狭いとしましょう)にすると、ユーザーとしてスクロールできないはずがありません。貧弱なデザインの結果として、単純にユーザー エクスペリエンスが貧弱になります。
See http://bugs.python.org/issue1207613
The IdleX project provides an extension for displaying a horizontal scroll bar in IDLE.
いいえ、テキストは挿入ポイントまたは選択範囲に基づいて水平にスクロールします。
Python 3.6 用の IDLE の水平スクロール バー。
Amber と彼/彼女の回答のおかげで、Python 3.6 で動作させる方法を見つけました。
同じクラスEditorWindow
でいくつかの変更を行う必要がありますが、現在は別のモジュールにあります: %python%\Lib\idlelib\ (win) の「editor.py」。
まず、同じメソッドを変更する必要があります__init__
。handle_xview
次に、同じクラスの新しいメソッドを作成します。
###
コードは次のとおりです。で終わる行を追加する必要があります。
self.vbar = vbar = Scrollbar(text_frame, name='vbar')
self.hbar = hbar = Scrollbar(text_frame, orient=HORIZONTAL, name='hbar') ###
...
vbar['command'] = self.handle_yview
vbar.pack(side=RIGHT, fill=Y)
text['yscrollcommand'] = vbar.set
hbar['command'] = self.handle_xview ###
hbar.pack(side=BOTTOM, fill=X) ###
text['xscrollcommand'] = hbar.set ###
そして方法:
...
def handle_yview(self, event, *args):
...
...
def handle_xview(self, event, *args): ###
"Handle Horizontal scrollbar." ###
self.text.xview(event, *args) ###
return 'break' ###
...
いいえ、Python PEPは を強調しているため、その行の長さは最大で 79 シンボルにする必要があります。もちろん、ほとんどの人はこれに違反しています。