powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / DHTML edit control & PowerBuilder
12 сообщений из 12, страница 1 из 1
DHTML edit control & PowerBuilder
    #32370176
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никто не использовал DHTML edit control в PowerBuilder'е, а то у меня не совсем получается. Что именно не получается: вызвать функцию которой надо передавать параметр - любую. Говорит error calling external object function
и все. Присвоить значения свойствам, вызвать функцию без аргументов - без проблем. Особенно интересует вызов ExecCommand(...)
Может кто примеры использования этого самого control'а в PowerBuilder'е где-нибудь видел, а то я что-то сам ничего и не нашел по этому поводу.
...
Рейтинг: 0 / 0
DHTML edit control & PowerBuilder
    #32370415
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В старых версиях PowerBuilder были какие-то проблемы с типом данных COM Variant.
Может в этом причина?
Возможно в последних версиях это устранено.
Какая версия PB?

Можно попробовать передавать аргументы типа Variant через переменные типа Any, которые заполнять перед вызовом.
...
Рейтинг: 0 / 0
DHTML edit control & PowerBuilder
    #32370494
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>В старых версиях PowerBuilder были какие-то проблемы с типом данных COM
>Variant.
>Может в этом причина?
_Любые_ _переменные_ допустим вызов вот такой функции не проходит
OLEObject.DocumentHTML(string DocumentHTML)
>Возможно в последних версиях это устранено.
>Какая версия PB?
Любая которая у меня есть в наличие от 6 до 9 - поведение одинаково.

>Можно попробовать передавать аргументы типа Variant через переменные
>типа Any, которые заполнять перед вызовом.
А каким образом это будет выглядеть на PowerBuilder'е?
В object browser'е он отображает эти типы как any, но как их использовать мне что-то не совсем понятно.
...
Рейтинг: 0 / 0
DHTML edit control & PowerBuilder
    #32370667
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор>В старых версиях PowerBuilder были какие-то проблемы с типом данных COM
>Variant.
>Может в этом причина?
_Любые_ _переменные_ допустим вызов вот такой функции не проходит
OLEObject.DocumentHTML(string DocumentHTML)
Код: plaintext
ole_1.object.DocumentHTML = '<b>Test</b>' 


ты лучше приведи свой пример кода, который у тебя не работает, так быстрее будет
...
Рейтинг: 0 / 0
DHTML edit control & PowerBuilder
    #32370688
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>ole_1.object.DocumentHTML = '<b>Test</b>'
Эээ... Так то работает, а же писал, что со свойствами проблем нет.

>ты лучше приведи свой пример кода, который у тебя не работает, так
>быстрее будет
Я же написал - вызов любой функции, ну хорошо - вот пример:
string s
s = "<b>Test</b>"
ole_1.object.DocumentHTML(s)

Сообщение об ошибке - error calling external object function documenthtml at line 3 in clicked event of object cb_1 of w_main_mdi.

Также не работает LoadURL и вообще, все функции с параметрами. Без параметров - все работают.

PS. В MSDN написано, что DHTML edit control должен работать с PowerBuilder'ом, правда пример они не приложили :)
...
Рейтинг: 0 / 0
DHTML edit control & PowerBuilder
    #32370803
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
аргумент LoadURL должен быть в UNICODE
Код: plaintext
ole_1.Object.LoadURL(ToUnicode( "http://ya.ru/" ))


в COM обычно уникодные строки используются
...
Рейтинг: 0 / 0
DHTML edit control & PowerBuilder
    #32370850
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мистика какая-то.
Теперь работает ole_1.Object.LoadURL(ToUnicode("http://ya.ru/"))
и даже так работает ole_1.Object.LoadURL("http://ya.ru/")
правда в PB9.0. Пойду дома попробую (у меня там другой билд 9.0 стоит).

В PB 6.0, правда, не работает.

Но как все-таки с ExecCommand работать?
Может кто подскажет, где описаны cmdID, а то я никак не найду? И как с типом any там работать?
...
Рейтинг: 0 / 0
DHTML edit control & PowerBuilder
    #32370867
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Похоже на баг ...
...
Рейтинг: 0 / 0
DHTML edit control & PowerBuilder
    #32370878
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может кто подскажет, где описаны cmdID, а то я никак не найду?
%PlatformSDK%/Include/DHtmled.js ?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
// DHTML Editing Component Constants for JavaScript
// Copyright  1998 - 1999  Microsoft Corporation.  All rights reserved.
//

//
// Command IDs
//
DECMD_BOLD =                       5000 
DECMD_COPY =                       5002 
DECMD_CUT =                        5003 
DECMD_DELETE =                     5004 
DECMD_DELETECELLS =                5005 
DECMD_DELETECOLS =                 5006 
DECMD_DELETEROWS =                 5007 
DECMD_FINDTEXT =                   5008 
DECMD_FONT =                       5009 
DECMD_GETBACKCOLOR =               5010 
DECMD_GETBLOCKFMT =                5011 
DECMD_GETBLOCKFMTNAMES =           5012 
DECMD_GETFONTNAME =                5013 
DECMD_GETFONTSIZE =                5014 
DECMD_GETFORECOLOR =               5015 
DECMD_HYPERLINK =                  5016 
DECMD_IMAGE =                      5017 
DECMD_INDENT =                     5018 
DECMD_INSERTCELL =                 5019 
DECMD_INSERTCOL =                  5020 
DECMD_INSERTROW =                  5021 
DECMD_INSERTTABLE =                5022 
DECMD_ITALIC =                     5023 
DECMD_JUSTIFYCENTER =              5024 
DECMD_JUSTIFYLEFT =                5025 
DECMD_JUSTIFYRIGHT =               5026 
DECMD_LOCK_ELEMENT =               5027 
DECMD_MAKE_ABSOLUTE =              5028 
DECMD_MERGECELLS =                 5029 
DECMD_ORDERLIST =                  5030 
DECMD_OUTDENT =                    5031 
DECMD_PASTE =                      5032 
DECMD_REDO =                       5033 
DECMD_REMOVEFORMAT =               5034 
DECMD_SELECTALL =                  5035 
DECMD_SEND_BACKWARD =              5036 
DECMD_BRING_FORWARD =              5037 
DECMD_SEND_BELOW_TEXT =            5038 
DECMD_BRING_ABOVE_TEXT =           5039 
DECMD_SEND_TO_BACK =               5040 
DECMD_BRING_TO_FRONT =             5041 
DECMD_SETBACKCOLOR =               5042 
DECMD_SETBLOCKFMT =                5043 
DECMD_SETFONTNAME =                5044 
DECMD_SETFONTSIZE =                5045 
DECMD_SETFORECOLOR =               5046 
DECMD_SPLITCELL =                  5047 
DECMD_UNDERLINE =                  5048 
DECMD_UNDO =                       5049 
DECMD_UNLINK =                     5050 
DECMD_UNORDERLIST =                5051 
DECMD_PROPERTIES =                 5052 

//
// Enums
//

// OLECMDEXECOPT  
OLECMDEXECOPT_DODEFAULT =          0  
OLECMDEXECOPT_PROMPTUSER =         1 
OLECMDEXECOPT_DONTPROMPTUSER =     2 

// DHTMLEDITCMDF
DECMDF_NOTSUPPORTED =              0  
DECMDF_DISABLED =                  1  
DECMDF_ENABLED =                   3 
DECMDF_LATCHED =                   7 
DECMDF_NINCHED =                   11 

// DHTMLEDITAPPEARANCE
DEAPPEARANCE_FLAT =                0 
DEAPPEARANCE_3D =                  1  

// OLE_TRISTATE
OLE_TRISTATE_UNCHECKED =           0 
OLE_TRISTATE_CHECKED =             1 
OLE_TRISTATE_GRAY =                2 

...
Рейтинг: 0 / 0
DHTML edit control & PowerBuilder
    #32370944
Фотография Филипп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я как то работал на проекте, где активно использовался DHTML edit control. Кончилось на том что для него wrapper Delphi написали, поскольку РВ только late binding могёт. Но тем не менее большинство методов работало и без wrapperа...
У меня всё это есть, могу отрыть...
...
Рейтинг: 0 / 0
DHTML edit control & PowerBuilder
    #32370978
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хм, и дома на PB 9 работает, прямо не знаю. Может в скрипте где ошибся, когда тестировал.
А на PB 6 не работает.
Еще интересная вещь выяснилась. Создаем документ в Word'е на русском, сохраняем в HTML. Все codepage там по путю проставленны и т.д. Из IE - нормальный документ, из PB 9 через DHTML - нормальный, а в PB6 через DHTML - кракозябы из латинского шрифта.

to Филипп: Конечно, интересно было бы посмотреть, тем более что я материала по сопряжению PowerBuilder vs DHTML фактически не нашел.
...
Рейтинг: 0 / 0
DHTML edit control & PowerBuilder
    #32370979
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
to Anatoly Moskovsky спасибо за наводку на cmdID, а то я их обыскался.
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / DHTML edit control & PowerBuilder
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]