Для создания класса кнопки, который будет открывать новое окно, вам нужно будет сделать несколько вещей. Во-первых, вам нужно создать метод, который будет открывать новое окно. Во-вторых, вам нужно убедиться, что ваш метод имеет доступ к Tk-окну, которое вы хотите открыть.
Вот пример реализации класса `FuncButton`, который открывает новое окно, когда вы нажимаете на кнопку. Я добавил новый метод `open_new_window`, который создает новое окно:
```python
from tkinter import *
import webbrowser
class FuncButton:
"""В этом классе происходит исполнение функций, при нажатии на кнопки"""
@staticmethod
def btn1():
print("Кнопка ONE нажата") # Здесь вы можете добавить логику для первой кнопки
@staticmethod
def btn2():
print("Кнопка TWO нажата") # Здесь вы можете добавить логику для второй кнопки
@staticmethod
def open_new_window():
site_root = Toplevel() # Используем Toplevel для создания нового окна
site_root.geometry('600x500')
site_root.title('New window')
site_root.resizable(width=False, height=False)
btnSc = Button(site_root, text='Проба', bg='blue', font=('Arial', 16, 'bold'),
command=lambda: webbrowser.get(using=None).open_new_tab('https://www.youtube.com'))
btnSc.pack(x=50, y=50)
site_root.mainloop()
main_root = Tk()
main_root.geometry('600x500')
main_root.title('Main window!')
main_root.resizable(width=False, height=False)
# Пример кнопки на основной панели, которая открывает новое окно
btnOne = Button(main_root, text='ONE', bg='yellow', font=('Arial', 16, 'bold'),
command=FuncButton.btn1)
btnOne.place(x=88, y=155, width=195, height=40)
btnTwo = Button(main_root, text='TWO', bg='red', font=('Arial', 16, 'bold'),
command=FuncButton.btn2)
btnTwo.place(x=88, y=200, width=195, height=40)
# Кнопка, чтобы открыть новое окно
btnNewWindow = Button(main_root, text='Open New Window', bg='green', font=('Arial', 16, 'bold'),
command=FuncButton.open_new_window)
btnNewWindow.place(x=88, y=250, width=195, height=40)
main_root.mainloop()
```
### Объяснение:
1. **@staticmethod**: Мы используем декоратор `@staticmethod` для методов, потому что эти методы не требуют доступа к экземпляру класса и могут быть вызваны напрямую через имя класса.
2. **Toplevel**: Вместо создания окна с помощью `Tk()`, используйте `Toplevel()`, чтобы открыть новое окно поверх основного окна.
3. **Основной цикл**: Основной цикл (`mainloop()`) вызывается только в главном окне, поэтому в новом окне его не нужно вызывать. Tkinter сам обрабатывает это.
4. **Кнопка открытия нового окна**: Для демонстрации добавлена кнопка, которая открывает новое окно, когда вы на нее нажмете.
Теперь, когда вы запускаете этот код, вы должны увидеть основное окно с тремя кнопками, и нажатие на кнопку "Open New Window" откроет новое окно с кнопкой, которая открывает определенный веб-сайт.