質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.38%
Tkinter

Tkinterは、GUIツールキットである“Tk”をPythonから利用できるようにした標準ライブラリである。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

2回答

3099閲覧

python tkinter テキストボックスのカーソルに関して

ekTJ

総合スコア109

Tkinter

Tkinterは、GUIツールキットである“Tk”をPythonから利用できるようにした標準ライブラリである。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2021/05/11 02:33

カーソルの初期位置を設定したい

サンプルコードですが、tkinterを起動時にtxt1に最初からカーソルを表示させてたいのですが出来ません。
focus_set()も使ってみましたが、反応せず。。。

どのようにすれば、最初からtxt1にカーソルが入った状態になるのでしょうか。

python

1#画面表示 2root = tk.Tk() 3root.geometry('500x400+600+300') 4root.title('入力画面') 5 6#顧客番号 7lbl1 = tk.Label(text='顧客番号',font=(u'MS ゴシック', 11, 'bold')) 8lbl1.place(x=85, y=148) 9txt1 = tk.Entry(width=30) 10txt1.place(x=160, y=150) 11 12#社員番号 13lbl2 = tk.Label(text='社員番号',font=(u'MS ゴシック', 11, 'bold')) 14lbl2.place(x=85, y=178) 15txt2 = tk.Entry(width=30) 16txt2.place(x=160, y=180) 17lbl3 = tk.Label(text='(7桁)',font=(u'MS ゴシック', 11, 'bold')) 18lbl3.place(x=345, y=178) 19 20# ファイルダイアログ 21label = tk.Label(root, text='データファイル',font=(u'MS ゴシック', 10, 'bold')) 22label.place(x=100, y=95) 23file_text = tk.Entry(root, width=40) 24file_text.place(x=100, y=115) 25fdlg_button = tk.Button(root, text='ファイル選択', command = lambda: OpenFileDlg(file_text) ) 26fdlg_button.place(x=360, y=110) 27 28#ボタン 29btn = tk.Button(root, text='CSV出力',width=20, font=("Menlo",11),command=btn_click) 30btn.place(x=155, y=220) 31 32btn1 = tk.Button(root, text="終了", width=20, font=("Menlo",11),command=root.destroy) 33btn1.place(x=155, y=250) 34 35root.mainloop() #表示保持

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

自己解決

python

1txt1.focus_force( )をで解決いたしました。

投稿2021/05/19 04:36

ekTJ

総合スコア109

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

focus_set()も使ってみましたが、反応せず。。。

focust_set() で出来るはずですが、どのように使ったのでしょうか?

問題を再現出来なかったので推測になりますが、
実行環境の影響で、起動後にフォーカスが奪われているケースであれば、
mainloop 内から呼び出されるようにしてみると解消するかもしれません。

python

1root.after_idle(txt1.focus_set) # タイマーに登録してmainloop内で呼び出し 2root.mainloop()

投稿2021/05/19 04:02

編集2021/05/19 04:44
teamikl

総合スコア8681

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.38%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問