Вот код, написанный до сих пор... Код в основном функционирует как пользовательский интерфейс для другой программы Python. Другая программа на Python не вызывает никаких проблем... Никто не смог помочь мне с предыдущим сообщением, поэтому я перефразировал и разместил повторно...
import tkinter as tk
from tkinter import ttk
from ttkthemes import themed_tk as tk
import subprocess
import sys
import time
import os
import tkinter.font as font
from tkinter.ttk import *
app = tk.ThemedTk()
app.get_themes()
app.set_theme("radiance")
app.geometry("400x400")
app.configure(bg='gray')
ex_activate_photo = tk.PhotoImage(file=r"C:\Users\bedga\PycharmProjects\GUIdev\ex_button_active.png") #It underlines PhotoImage
myFont = font.Font(family='Helvetica', size=20, weight='normal')
ttk.Label(app, text='Ex', bg='gray', font=(
'Verdana', 15)).pack(side=tk.TOP, pady=10)
app.iconbitmap(r'C:\Users\ex\ex_icon.ico')
def ex_activation():
global pro
print("Ex")
pro = subprocess.Popen("python ex.py", shell=True)
def ex_stop():
global pro
print("Stopping Program... Please Wait!")
os.kill(pro.pid, 0)
ex_activation_button = ttk.Button(app, bg='black', image=ex_activate_photo, width=120, height=120, command=ex_activation)
ex_stop_button = ttk.Button(app, bg='Gray', text='Stop Program', width=12, command=ex_stop, height=3)
ex_stop_button['font'] = myFont
app.title("Ex")
ex_activation_button.pack(side=tk.TOP)
ex_stop_button.pack(side=tk.LEFT)
# app.mainloop()
while True:
try:
app.update()
app.update_idletasks()
except KeyboardInterrupt:
pass
Цель здесь состоит в том, чтобы в конечном итоге оформить каждую кнопку (2) и метку вверху. Затем я могу применить аналогичные методы при создании новых тем в будущем. В настоящее время PhotoImage не любит tk и ttk. Программа подчеркивает это. Одна из тематических кнопок основана на фотографиях, а другая — на тексте. Я видел успешные проекты с тематическими кнопками-изображениями.
Это ошибка, которую я получаю с tk.photoimage
Traceback (most recent call last):
File "C:/Users/ex/main.py", line 19, in <module>
ex_activate_photo = tk.PhotoImage(file=r"C:\Users\ex\ex_button_active.png") #It underlines PhotoImage
AttributeError: module 'ttkthemes.themed_tk' has no attribute 'PhotoImage'
РЕДАКТИРОВАТЬ: это ошибка, которую я получаю за выполнение
import tkinter as tk
from ttkthemes import themed_tk as tkk
import subprocess
import sys
import time
import os
import tkinter.font as font
from tkinter.ttk import *
Я получаю эту ошибку:
Traceback (most recent call last):
File "C:/Users/ex/main.py", line 19, in <module>
ex_activate_photo = tk.PhotoImage(file=r"C:\Users\ex\ex_button_active.png") #It underlines PhotoImage
File "C:\Users\ex\AppData\Local\Programs\Python\Python36\lib\tkinter\__init__.py", line 3539, in __init__
Image.__init__(self, 'photo', name, cnf, master, **kw)
File "C:\Users\ex\AppData\Local\Programs\Python\Python36\lib\tkinter\__init__.py", line 3495, in __init__
self.tk.call(('image', 'create', imgtype, name,) + options)
_tkinter.TclError: couldn't open "C:\Users\ex\PycharmProjects\ex\ex_button_active.png": no such file or directory
Я не думал, что темы ttk будут иметь проблемы с PhotoImage в качестве переменной, потому что это библиотека тем для tkinter. Я очень новичок в разработке графического интерфейса в Python, и любая помощь очень ценится.