以下の記事では、既知のサイズのtkinterメイン画面をモニター端に移動させる方法を示した。今回は、メイン画面のサイズによらずに自動でモニター端に移動させる方法を示す。
また、アプリ起動時に画面を移動させる方法は以下の記事を参照。
【スポンサーリンク】
以下の例では、ボタンクリック時にtkinter画面とモニターのサイズ(幅)を取得し、geometry関数を使用してtkinter画面を移動させている。
how to move the tkinter main window to the corner…
表示されたボタンをクリックすると、tkinter画面がモニター右上隅に移動する。
上の例では、実際にはtkinterの画面右側が、ややモニター外に位置してしまっている。これは、tkinterメイン画面には見えない枠があることが原因である。tkinter画面端とモニター端ピッタリ合わせるためには、その枠分だけ座標をシフトさせる必要がある。枠の幅は、以下の方法で取得可能である。実装方法は、上記例の"move_position2関数"を参照。
frame = self.master.winfo_rootx() - self.master.winfo_x() #invisible frame width