继承tkk.frame,可放置控件,更改分割颜色
This commit is contained in:
parent
2b6d3b1d19
commit
909d242830
|
@ -5,7 +5,7 @@
|
||||||
"version": "0.2.0",
|
"version": "0.2.0",
|
||||||
"configurations": [
|
"configurations": [
|
||||||
{
|
{
|
||||||
"name": "Python 调试程序: 当前文件",
|
"name": "Python 调试",
|
||||||
"type": "debugpy",
|
"type": "debugpy",
|
||||||
"request": "launch",
|
"request": "launch",
|
||||||
"program": "debug.py",
|
"program": "debug.py",
|
||||||
|
|
|
@ -26,7 +26,7 @@ except ImportError:
|
||||||
WIN_INF = 10000
|
WIN_INF = 10000
|
||||||
|
|
||||||
|
|
||||||
class Window():
|
class Window(ttk.Frame):
|
||||||
x = 200
|
x = 200
|
||||||
y = 200
|
y = 200
|
||||||
w = 500
|
w = 500
|
||||||
|
@ -45,6 +45,7 @@ class Window():
|
||||||
|
|
||||||
def update_size(self) -> None:
|
def update_size(self) -> None:
|
||||||
self.tk_w_without_bar.set(self.w-48*3)
|
self.tk_w_without_bar.set(self.w-48*3)
|
||||||
|
self.place(x=8, y=self.top_h+1+8, width=self.w-16, height=self.h-1-16)
|
||||||
self.main_tk.geometry(
|
self.main_tk.geometry(
|
||||||
f"{self.w}x{self.h+self.top_h}+{self.x}+{self.y}")
|
f"{self.w}x{self.h+self.top_h}+{self.x}+{self.y}")
|
||||||
self.__fake_tk.geometry(
|
self.__fake_tk.geometry(
|
||||||
|
@ -63,7 +64,7 @@ class Window():
|
||||||
self.style.configure(
|
self.style.configure(
|
||||||
'Root.TFrame', background=self.color["background"])
|
'Root.TFrame', background=self.color["background"])
|
||||||
self.style.configure(
|
self.style.configure(
|
||||||
'Splitline.TFrame', background=color_tmpl.setlight(self.color["border_base"], 0.8))
|
'Splitline.TFrame', background=self.color["border_light"])
|
||||||
self.style.configure(
|
self.style.configure(
|
||||||
'BarExitButton.TFrame', background=self.color["background"])
|
'BarExitButton.TFrame', background=self.color["background"])
|
||||||
self.style.configure(
|
self.style.configure(
|
||||||
|
@ -136,8 +137,8 @@ class Window():
|
||||||
control_frame.pack(anchor="e", side='right')
|
control_frame.pack(anchor="e", side='right')
|
||||||
title_frame.bind("<Button-1>", start_move)
|
title_frame.bind("<Button-1>", start_move)
|
||||||
title_frame.bind("<B1-Motion>", move_win)
|
title_frame.bind("<B1-Motion>", move_win)
|
||||||
|
|
||||||
title_frame.bind("<ButtonRelease-1>", special_move)
|
title_frame.bind("<ButtonRelease-1>", special_move)
|
||||||
|
|
||||||
_window_ctl.exit_btn_set(self, root)
|
_window_ctl.exit_btn_set(self, root)
|
||||||
_window_ctl.zoom_btn_set(self, root)
|
_window_ctl.zoom_btn_set(self, root)
|
||||||
_window_ctl.iconic_btn_set(self, root)
|
_window_ctl.iconic_btn_set(self, root)
|
||||||
|
@ -148,6 +149,7 @@ class Window():
|
||||||
titles.pack()
|
titles.pack()
|
||||||
titles.bind("<Button-1>", start_move)
|
titles.bind("<Button-1>", start_move)
|
||||||
titles.bind("<B1-Motion>", move_win)
|
titles.bind("<B1-Motion>", move_win)
|
||||||
|
titles.bind("<ButtonRelease-1>", special_move)
|
||||||
|
|
||||||
def __init__(self, w=500, h=350, title="MagicTk", color_list: None | dict = None) -> None:
|
def __init__(self, w=500, h=350, title="MagicTk", color_list: None | dict = None) -> None:
|
||||||
self.title = title
|
self.title = title
|
||||||
|
@ -163,6 +165,10 @@ class Window():
|
||||||
self.tk_w_without_bar = tkinter.IntVar()
|
self.tk_w_without_bar = tkinter.IntVar()
|
||||||
self.tk_w_without_bar.set(self.w-48*3)
|
self.tk_w_without_bar.set(self.w-48*3)
|
||||||
|
|
||||||
|
ttk.Widget.__init__(self, self.main_tk, "ttk::frame", {
|
||||||
|
"style": "Main.TFrame"})
|
||||||
|
self.place(x=8, y=self.top_h+1+8, width=self.w-16, height=self.h-1-16)
|
||||||
|
|
||||||
self.update_size()
|
self.update_size()
|
||||||
self.__fake_tk.title(self.title)
|
self.__fake_tk.title(self.title)
|
||||||
self.main_tk.title(self.title)
|
self.main_tk.title(self.title)
|
||||||
|
|
Loading…
Reference in New Issue