![]() |
#2 |
Участник
|
Столкнулся с подобной задачей.
Нужно открыть эту же форму, только в другой компании. Сделал немного по-другому: Код: #define.company('dat') Args args; // ?????? ????? Args FormRun formRun; // ?????? ????? FormRun int hwnd; ; super(); hwnd = element.hWnd(); element.close(); appl.setDefaultCompany(#company, false); SysSecurity::reload(false); args = new Args(); args.parm(int2str(hwnd)); // args.caller( this ); args.name(formStr(PurchTable)); formRun = ClassFactory.formRunClass(args); formRun.init(); formRun.run(); formRun.wait(); infolog.clear(); Хотя, закрывать пытаюсь и в этом методе (простое element.close()); и в init открываемой формы, если передали parm() Код: hwnd = str2int(element.args().parm()); WinAPI::sendMessageEx(hwnd, #WM_SYSCOMMAND, #SC_CLOSE, 0); или, может, кто-то знает хороший способ открытия формы в другой компании? |
|
|
|