пока все пакеты установишь или обновишь
легче комп привезти куда нибудь



Код: Выделить всё
photo = """
R0lGODlhDwASAKUAAAAAAEY6J1FELltILFVLM19UOmNWM2NXQGlcO4BdJm5hRnFjOnVoRXluWZpw
G31yXoiAbpiDQ4qEc8J/EsCBEpKMeJWQfNeMEbWWI5uYjdmYEuubD/6kDO6qEP6oDe2wEf6sDf6x
Drq4sv61Du+9Ev65Dui/Fv69D9bGMP7FEP7KEObUOe3VHf7SE/7ZFf7cFtfW0/zgGPzhGP/jGP/k
GP/pGfnuIv/tG//yHOrp6O/v7vb29v///wAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQJ
CgA/ACwAAAEADwARAAAGsMCfcGdhIBYIRWUnbMIWKxvuVmNhDrBmJiLF4Wq1mMtkyPx0hK63NhOr
SAFdBXXDAQBU2V2VckgKMjV4NwA0AC0pACcfAgYyNDQ3NzQvLYgnJSUCCy53np93IQMELQA8PKan
qQAhAQQkq6eoqhsEEBixqqoOEDAGJaapswAcA1kPDsDCdxwOD0I6AR0joBwbcU05ARogHh4cHBcB
OU1COQcJFBcTCQXk5U0iDwoNIvBBACH5BAkKAD8ALAAAAAAPABEAAAawwJ9wZ2EgFghFZSdswhYr
G+5WY2EOsGYmIsXharWYy2TI/HSErrc2E6tIAV0FdcMBAFTZXZVySAoyNXg3ADQALSkAJx8CBjI0
NDc3NC8tiCclJQILLneen3chAwQtADw8pqepACEBBCSrp6iqGwQQGLGqqg4QMAYlpqmzABwDWQ8O
wMJ3HA4PQjoBHSOgHBtxTTkBGiAeHhwcFwE5TUI5BwkUFxMJBeTlTSIPCg0i8EEAOw==
"""
img = PhotoImage(data=photo)
self.hi_there = Button(frame, image=img, text="Hello", compound=LEFT)
self.hi_there.img = img

Код: Выделить всё
class pyvcp_image(_pyvcp_dummy):
all_images = {}
def __init__(self, master, pycomp, name, **kw):
self.all_images[name] = PhotoImage(name, kw, master)



+1! От лукавого они всеАлексс писал(а):пробовал я его - понял что не люблю графические редакторы интерфейса
gladevcp - это не только редактор, но и свой загрузчик, обработчик и прочее, наверняка этот EMBED_TAB_COMMAND должен получать какой-то хендл на новое окно, а pyvcp его может и не выдавать...Алексс писал(а):EMBED_TAB_COMMAND = pyvcp -c xxx xxx.xml
На Tcl/Tk очень много начатых и брошенных проектов визуальных редакторов интерфейсов - многие начинают писать, в процессе проникаются простотой создания оных в рукопашную и бросают.Nick писал(а):+1! От лукавого они всеАлексс писал(а):пробовал я его - понял что не люблю графические редакторы интерфейса!

вот как раз этого хэндла и не хватает.Nick писал(а):наверняка этот EMBED_TAB_COMMAND должен получать какой-то хендл на новое окно
axis парсит ини файл- и если PyVCP то подгружает модуль vcpparse:Алексс писал(а):надо искать в коде.
Код: Выделить всё
if vcp:
rxid = root_window.winfo_id()
os.environ['AXIS_FORWARD_EVENTS_TO'] = str(rxid)
import vcpparse
comp.setprefix("pyvcp")
f = Tkinter.Frame(root_window)
f.grid(row=0, column=4, rowspan=6, sticky="nw", padx=4, pady=4)
vcpparse.filename = vcp
vcpparse.create_vcp(f, comp)
comp.ready()Код: Выделить всё
def _dynamic_tab(name, text):
tab = widgets.right.insert("end", name, text=text)
tab.configure(borderwidth=1, highlightthickness=0)
return tabКод: Выделить всё
def _dynamic_tabs(inifile):
from subprocess import Popen
tab_names = inifile.findall("DISPLAY", "EMBED_TAB_NAME")
tab_cmd = inifile.findall("DISPLAY", "EMBED_TAB_COMMAND")
if len(tab_names) != len(tab_cmd):
print "Invalid tab configuration"
return
rxid = root_window.winfo_id()
os.environ['AXIS_FORWARD_EVENTS_TO'] = str(rxid)
for i,t,c in zip(range(len(tab_cmd)), tab_names, tab_cmd):
w = _dynamic_tab("user_" + str(i), t)
f = Tkinter.Frame(w, container=1, borderwidth=0, highlightthickness=0)
f.pack(fill="both", expand=1)
xid = f.winfo_id()
cmd = c.replace('{XID}', str(xid)).split()
child = Popen(cmd)
wait = cmd[:2] == ['halcmd', 'loadusr']
_dynamic_childs[str(w)] = (child, cmd, wait)Код: Выделить всё
EMBED_TAB_NAME=xml
EMBED_TAB_COMMAND=halcmd loadusr pyvcp -x {XID} 1.xml 
pyvcp не ожидает параметра x...nkp писал(а):а вот почему???