powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Применение web-контрола - плюсы и минусы разработки
4 сообщений из 4, страница 1 из 1
Применение web-контрола - плюсы и минусы разработки
    #37015212
maple4
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Интересно, кто, КАК (я, допустим - только размещая его на форме, далее - прописываю методы, свойства. Но есть же и другие варианты "ручного" добавления объекта - хотелось бы узнать о плюсах и минусах...) и ДЛЯ ЧЕГО (использование в проекте) применяет web-контрол?

Нахожусь в творческом поиске...
...
Рейтинг: 0 / 0
Применение web-контрола - плюсы и минусы разработки
    #37016123
Фотография Aleksey-K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maple4Интересно, кто, КАК (я, допустим - только размещая его на форме, далее - прописываю методы, свойства. Но есть же и другие варианты "ручного" добавления объекта - хотелось бы узнать о плюсах и минусах...) и ДЛЯ ЧЕГО (использование в проекте) применяет web-контрол?

Нахожусь в творческом поиске...
Web контрол использую в двух случаях:
1. Вывода отчетов Reporting Services в приложении VFP: http://vfox.kristall.ru/rs1.html
2. Вывод разноцветного текста

С уважением, Алексей
...
Рейтинг: 0 / 0
Применение web-контрола - плюсы и минусы разработки
    #37029179
maple4
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Получается, что никто особо web-контролом не пользуется...

Как пример.
Я видел пример визуального редактора, сделанного на FoxPro+IE, в котором вся функциональность реализована на FoxPro.
Рискну предложить другой, альтернативный вариант, в котором редактор написан средствами HTML и JavaScript, FoxPro нужен для перехвата и обработки параметров в post.

Сразу скажу, код не мой.

I. обработка нажатия кнопки сохранения (wb.BeforeNavigate2):

*** ActiveX Control Event ***
LPARAMETERS pdisp, url, flags, targetframename, postdata, headers, cancel
LOCAL lccmd,lcoutstr,lnlenoutstr
IF UPPER(LEFT(url,4))="VFP:"
IF VARTYPE(postdata)="C" OR VARTYPE(postdata)="Q"
lccmd="%20"+postdata
lcoutstr=SPACE(LEN(lccmd))
lnlenoutstr=LEN(lcoutstr)
DECLARE LONG UrlUnescape IN ShlWapi.DLL STRING, STRING @,LONG @,LONG
urlunescape(lccmd,@lcoutstr,@lnlenoutstr,0)
CLEAR DLLS 'UrlUnescape'
lccmd=ALLTRIM(LEFT(lcoutstr,lnlenoutstr))
lccmd=SUBSTR(lccmd,9) && убираю message=
cancel=.t.
WAIT WINDOW LEFT(lccmd,200) NOWAIT
ENDIF
ENDIF


II. form.init:
THISFORM.wb.NAVIGATE(LOWER("file:///"+SYS(5)+SYS(2003)+"/"+"edit.html"))



III. и текст html-страницы:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" " http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns=" http://www.w3.org/1999/xhtml">
<HEAD><META content="text/html; charset=windows-1251" http-equiv=content-type><TITLE>Сообщения</TITLE>
</HEAD>
<body>
<script>
function Post()
{
document.myform.message.value = newTextArea.document.body.innerHTML;
myform.submit();
}
function EditorExecCommand( command_param,prm )
{
var tr = frames.newTextArea.document.selection.createRange();
tr.select();
switch (command_param) {
case 'ForeColor':tr.execCommand("foreColor", false, prm); break;
case 'BackColor':tr.execCommand("backColor", false, prm); break;
default:
tr.execCommand( command_param );
}
frames.newTextArea.focus();
}

</script>

<form name="myform" method="POST" action="VFP:///POST">
<input type="hidden" name="message">
</form>

<input type="button" onClick="EditorExecCommand( 'Bold' );" value=" B ">
<input type="button" onClick="EditorExecCommand( 'Italic' );" value=" I ">
<input type="button" onClick="EditorExecCommand( 'Underline' );" value=" U ">
 
<input type="button" onClick="EditorExecCommand( 'JustifyLeft' );" value=" Left ">
<input type="button" onClick="EditorExecCommand( 'JustifyCenter' );" value=" Center ">
 
<input type="button" onClick="EditorExecCommand( 'InsertOrderedList' );" value=" OL ">
<input type="button" onClick="EditorExecCommand( 'InsertUnorderedList' );" value=" UL ">
<br>Цвет текста
 
<input type="button" onClick="EditorExecCommand( 'ForeColor','#ff0000');" value=" RED ">
<input type="button" onClick="EditorExecCommand( 'ForeColor','#00ff00');" value=" GREEN ">
<input type="button" onClick="EditorExecCommand( 'ForeColor','#0000ff');" value=" BLUE ">
<input type="button" onClick="EditorExecCommand( 'ForeColor','#ffffff');" value=" WHITE ">
<input type="button" onClick="EditorExecCommand( 'ForeColor','#000000');" value=" BLACK ">
<br>Цвет фона
 
<input type="button" onClick="EditorExecCommand( 'BackColor','#ff0000');" value=" RED ">
<input type="button" onClick="EditorExecCommand( 'BackColor','#00ff00');" value=" GREEN ">
<input type="button" onClick="EditorExecCommand( 'BackColor','#0000ff');" value=" BLUE ">
<input type="button" onClick="EditorExecCommand( 'BackColor','#ffffff');" value=" WHITE ">
<input type="button" onClick="EditorExecCommand( 'BackColor','#000000');" value=" BLACK ">
<p>
<iframe width=100% height=200px id="newTextArea" name="newTextArea"></iframe>
</p>
<input type="button" onClick="Post();" value="Сохранить">
<script>
newTextArea.document.designMode = "on";
</script>
</body>
</html>



В архиве - форма и html-файл
...
Рейтинг: 0 / 0
Применение web-контрола - плюсы и минусы разработки
    #37030067
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Автор: maple4
> Получается, что никто особо web-контролом не пользуется...


Еще лет 7-8 назад я более активно интересовался VB, тогда попадалось много проблем при использовании web-контрола из-за
ограниченных возможностей. Проще было откыть сокет на 80-ом порту и генерить html прямо в дефолтный-браузер, чем
героически преодолевать глюки.

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Применение web-контрола - плюсы и минусы разработки
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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