![]() |
#1 |
Участник
|
Как вывести из буфера html скрипт на экран?
Чё-то смотрю и ничего лучше в голову не приходит, чем создать класс наследник от SysHelpBook изменить buildText() и добавить в construct своего класса .
А потом вызывать X++: sysHelp::showURL('Мой префикс://' + ); Что-то штатное поидее должно быть. |
|
![]() |
#2 |
Участник
|
можно либо сделать свою флому либо SysHelp поюзать либо другую форму, где вставлен IE как activeX.
МОжно создать SysHelp, а потом SYsHelp::showHelp(activeX, текст) |
|
![]() |
#3 |
Участник
|
Цитата:
Вдруг потом ещё понадобиться. Что-то должно наверное где-то быть. Форма SysHelp вроде цынусно выглядит. Поэтому странно что они наследник от SysHelpBook для таких целей не создали. Что наводит на мысль может вообще не в том семействе ищу. А переберать все формы с activeX, как то время жалко. А тут всё равно activeX нужен. Можно конечно подумать чтоб динамически на форму Dialog его положить. Но что-то уж больно мудрёно выходит. |
|
![]() |
#4 |
Участник
|
а почему не хочется? Еще можно просто IE показать, но он будет в отдельном от приложении окне. А еще можно попробовать ее создать динамически
|
|
![]() |
#5 |
Участник
|
|
|
![]() |
#6 |
Участник
|
Класс для вывода на экран html-скрипта.
Создать класс SysHelpBookHtmlBuffer. В класс SysHelpBook в метод construct добавить X++: case 'HtmlBuffer': return new SysHelpBookHtmlBuffer(sysHelp); X++: sysHelp::showURL('HtmlBuffer://' + "<table> Привет <tr> Пока <table>"); |
|
![]() |
#7 |
Участник
|
Предложенный мной выше способ не подходит.
Там ограничение на количество введённых символов. Есть лучше способ без изменения стандартного функционала. X++: static void Job14(Args _args) { str helpText; Args args; FormRun formRun; object browser; FormDesign formDesign; str pathAppl; ; pathAppl = SysHelpPath::applField('SalesTable', 'SalesId'); helpText = sysHelp::getHelpText(pathAppl); args = new Args(); args.name(formstr(SysHelp)); formRun = classFactory.formRunClass(args); formRun.init(); formDesign = formRun.design(); formDesign.visible(true); browser = formDesign.controlName("Doc"); SysHelp::showHelp(browser, helpText); formRun.run(); formRun.wait(); } Последний раз редактировалось miklenew; 11.07.2008 в 09:36. |
|
|
За это сообщение автора поблагодарили: Molchun (0). |
![]() |
#8 |
Участник
|
предложенный пример работает, но вот для формы никак не могу вытащить справку
pathAppl = SysHelpPath::applForm("Address")+"/Designs/Design"; не получается и в лоб подстановкой (это значения свойств HTMLHelpFile и HTMLHelpTopic на дизайне- /Designs/Design) pathAppl = sysHelp::getChmUrl(sysHelp::getChmPath("IWorker.chm"), "AxShared.chm::/html/b00c0a20-6a59-4d94-9461-f6ff1f672fcc.htm"); хотя если полученный адрес (результат из pathAppl) вставляю в проводник - открывает верно в итоге хочется получить текстовую строку с развёрнутым описанием формы из AOT. сталкивался ли кто-нибудь с подобным?
__________________
Дом поросенка должен быть крепостью. (Наф-Наф, полн. собр. соч., т.5, стр. 286) |
|