回答編集履歴

2

tkinter のコード掲載

2024/12/11 15:48

投稿

teamikl
teamikl

スコア8791

test CHANGED
@@ -11,19 +11,30 @@
11
11
  ```python
12
12
  import tkinter as tk
13
13
 
14
+ # 変更点:
15
+ # - Entry を 画面外に配置 (機能は残しつつも非表示)
16
+ # - テキストクリック時に Entry にフォーカスを移す
17
+ # - (テキストのフォントサイズ調整)
18
+
19
+ # 課題
20
+ # - Tab で 入力欄を遷移したときに、隠し Entry が含まれる
21
+ # - 矢印キー操作時、編集中のカーソルが見えない
22
+
14
23
  def main():
15
24
  root = tk.Tk()
16
25
  heightVar = tk.IntVar(root, value=900)
17
26
  canvas = tk.Canvas(root, width=600, height=600)
18
- entry = tk.Entry(canvas, width=10, textvar=heightVar)
27
+ entry = tk.Entry(root, width=10, textvar=heightVar)
28
+ entry.place(x=-10000, y=-10000)
19
29
 
20
30
  canvas.pack(fill=tk.BOTH, expand=True)
21
- canvas.create_window((10, 10), anchor="nw", window=entry)
22
- item = canvas.create_text((100, 200), text="900", angle=90)
31
+ item = canvas.create_text((100, 200), text="900", angle=90, font=("",30))
23
32
 
24
33
  def _update_text(*args):
25
34
  value = heightVar.get()
26
35
  canvas.itemconfigure(item, text=f"H. {value}")
36
+
37
+ canvas.tag_bind(item, "<Button-1>", lambda _: entry.focus())
27
38
 
28
39
  heightVar.trace("w", _update_text)
29
40
 

1

動作デモのスクショを掲載(Qt, Kivy, Tk)

2024/12/11 06:16

投稿

teamikl
teamikl

スコア8791

test CHANGED
@@ -58,3 +58,8 @@
58
58
  </body>
59
59
  </html>
60
60
  ```
61
+
62
+
63
+ ----
64
+ ## 動作DEMO (Qt/Kivy/Tkinter)
65
+ ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2024-12-11/b0a3e6ed-774e-4452-aee5-0e237e059fa5.gif)