Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / ещё NAVIGATE !!! (for В. Клепенин) / 25 сообщений из 29, страница 1 из 2
18.05.2004, 11:38
    #32521746
beetle.ru
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ещё NAVIGATE !!! (for В. Клепенин)
а если просто форма и 'обозреватель"?
...
Рейтинг: 0 / 0
18.05.2004, 11:53
    #32521785
beetle.ru
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ещё NAVIGATE !!! (for В. Клепенин)
прописать в activate? или еще можно както?
...
Рейтинг: 0 / 0
18.05.2004, 12:06
    #32521821
beetle.ru
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ещё NAVIGATE !!! (for В. Клепенин)
а можно ли нажимая на кнопки в HTMLке управлять событиями на форме? если да то как это сделать?
...
Рейтинг: 0 / 0
18.05.2004, 12:12
    #32521840
ещё NAVIGATE !!! (for В. Клепенин)
А что вообще Вы хотите создать? Форму для вывода справочной информации?
Если на форме только обозреватель, то при вызове такой формы используйте команду:
Код: plaintext
DO FORM MyHelpForm WITH строка_URL
В методе INIT этой формы пропишите код:
Код: plaintext
1.
LPARAMETER cURL
THIS.oWEB.NAVIGATE(cURL)
Передаваемая строка должна содержать имя HTML-файла, например:

C:\MyFolder\Help\default.htm

Желательно так же использовать префикс file:// для указания эксплореру, что открываем файл на диске.

Нажатием на кнопки в форме, описанной в HTML, управлять событиями на форме Visual FoxPro нельзя.
...
Рейтинг: 0 / 0
19.05.2004, 02:09
    #32523096
beetle.ru
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ещё NAVIGATE !!! (for В. Клепенин)
большое спасибо за помощь мне!!! Не могли бы вы прислать мне свой email на beetleru@mail.ru? я свами хотел бы поговорить об образовании. и еще раз спасибо!
...
Рейтинг: 0 / 0
19.05.2004, 14:31
    #32524024
ещё NAVIGATE !!! (for В. Клепенин)
Давайте лучше общаться через форум
...
Рейтинг: 0 / 0
20.05.2004, 20:48
    #32527127
BeeTLe.ru
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ещё NAVIGATE !!! (for В. Клепенин)
Я читал Вы пограмист из Питера. Хотел бы узнать где вы учились(получали образование)? Можети ли вы расказать что нибудь об учебных заведениях в вашем(и если знаете, то не в вашем) городе?

!!! ЕСЛИ ЕЩЁ КТО НИБУДЬ ЧИТАЕТ ЕТО, ТОЖЕ МОЖЕТ ЧТО НИБУДЬ РАССКАЗАТЬ ПОСОВЕТОВАТЬ!!!буду очень благодарен

об себе-
Меня зовут Куянов Антон(Новороссийск) ученик 10 класса. успеваемость нормл(4,5) вышло из 16ти предметов 10 4ок. Также обучаюсь на курсах при Технико Экономическом колледже по профессии Оператор Програмист ЭВМ(срок обучения 3 года). Щас заканчиваю 3й год, иду на красный диплом, осталось только написать дипломную работу, состоящюю из рефера по описанию какой либо праги не мения 25 листов и написании своей праги.вот.
общался сосвоим преподом, расказывает что у нее училась девушка.Она очень хорошо училась, участвовала во многих математических олимпиадах, написала замечательную дипломную, отличную програму, закончила школу у поступила в ваш Питерский институт связанный с програмированием. но на 1ом же курсе её отчислили. Препод говорит, что там вобще тяжело учиться, говорит , что наверное отчислили иза того что чето не доучила.
Не знаю, чо то она меня этим немного озадачила. ваше мнение?




и есчо-

я замутил чето типа скинов для праги, но както не так как бы мне етого хотелось всё это работает. хорЧИться чтоб внешний вид обнавлялся на форме без перизапуска формы.(для начала внешних вида 2 штуки)

создал таблицу Vid с полем nVid. в start.prg прописал вот такое вот
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
******внешний вид******************************************
use gcexepath+"tabls\vid.dbf"
gnVid=nVid
do case
  case gnvid= 1 
    glKeyVid1=.F.
    glKeyVid2=.T.
  case gnvid= 2 
    glKeyVid1=.T.
    glKeyVid2=.F.
endcase
use
***********************************************************
в менюшных кнопах прописал(пока только для одной формы(frmSotrAdd) и ToolBara(goTime))
первая
Код: 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.
if !WEXIST("frmSotrAdd")
  use gcexepath+"tabls\vid.dbf"
  REPLACE nVid WITH  1 
  use
  glKeyVid2=.T.
  glKeyVid1=.F.
  gnVid= 1 
  goTime.refresh()

else  
  if MESSAGEBOX("Вы хотите изменить внешний вид"+chr( 13 )+"с потерей введённых данных?", 36 ,"сообщение")= 6 
    if !used("vid")       && если таблица не открыта                 
      use gcexepath+"tabls\vid.dbf"
      REPLACE nVid WITH  1 
      use
    else
      select vid
      REPLACE nVid WITH  1 
    endif
    glKeyVid2=.T.
    glKeyVid1=.F.
    gnVid= 1 
    goTime.refresh()
    
    do case
       case WEXIST("frmSotrAdd")
         Release WINDOW "frmSotrAdd"
         DO FORM FRM\Sotr_Add.scx
    endcase
  endif
endif
по анологии вторая
Код: 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.
if !WEXIST("frmSotrAdd")
  use gcexepath+"tabls\vid.dbf"
  REPLACE nVid WITH  2 
  use
  glKeyVid1=.T.
  glKeyVid2=.F.
  gnVid= 2 
  goTime.refresh()
else  
  if MESSAGEBOX("Вы хотите изменить внешний вид"+chr( 13 )+"с потерей введённых данных?", 36 ,"сообщение")= 6 
    if !used("vid")       && если таблица не открыта                 
      use gcexepath+"tabls\vid.dbf"
      REPLACE nVid WITH  2 
      use
    else
      select vid
      REPLACE nVid WITH  2 
    endif
    glKeyVid1=.T.
    glKeyVid2=.F.
    gnVid= 2 
    goTime.refresh()

    do case
       case WEXIST("frmSotrAdd")
         Release WINDOW "frmSotrAdd"
         DO FORM FRM\Sotr_Add.scx
    endcase
  endif
endif


с панелькой то легко , а вот с фориой...

в форме прописал
Код: 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.
*************внешний вид****************************
do case
  case gnVid= 1 
    this.picture=gcExePath+"pict\01.jpg"
    with this
      .SetAll('ForeColor',rgb( 255 , 255 , 0 ),'Label')
      .SetAll('BackColor',rgb( 255 , 128 , 0 ),'textbox')
      .SetAll('FontBold',.T.,'textbox')
      .SetAll('FontBold',.T.,'Label')
      .SetAll('BackColor',rgb( 255 , 128 , 0 ),'combobox')
      .SetAll('ItemBackColor',rgb( 255 , 128 , 0 ),'combobox')
      .SetAll('SelectedBackColor',rgb( 255 , 128 , 0 ),'combobox')
      .SetAll('SelectedForeColor',rgb( 0 , 0 , 0 ),'combobox')    
      .SetAll('SelectedItemBackColor',rgb( 0 , 0 , 0 ),'combobox')
      .SetAll('SelectedItemForeColor',rgb( 255 , 255 , 0 ),'combobox')
      .opgDate.SetAll('ForeColor',rgb( 255 , 255 , 0 ),'Optionbutton')
      .opgPost.SetAll('ForeColor',rgb( 255 , 255 , 0 ),'Optionbutton')
      .txtTab.DisabledBackColor=rgb( 255 , 128 , 0 )
    endwith
  case gnVid= 2 
    this.picture=gcExePath+"pict\02.jpg"
    with this
      .SetAll('ForeColor',rgb( 255 , 255 , 255 ),'Label')
      .SetAll('BackColor',rgb( 109 , 200 , 254 ),'textbox')
      .SetAll('FontBold',.T.,'textbox')
      .SetAll('FontBold',.T.,'Label')
      .SetAll('BackColor',rgb( 109 , 200 , 254 ),'combobox')
      .SetAll('ItemBackColor',rgb( 109 , 200 , 254 ),'combobox')
      .SetAll('SelectedBackColor',rgb( 109 , 200 , 254 ),'combobox')
      .SetAll('SelectedForeColor',rgb( 0 , 0 , 0 ),'combobox')    
      .SetAll('SelectedItemBackColor',rgb( 0 , 0 , 0 ),'combobox')
      .SetAll('SelectedItemForeColor',rgb( 255 , 255 , 255 ),'combobox')
      .opgDate.SetAll('ForeColor',rgb( 255 , 255 , 255 ),'Optionbutton')
      .opgPost.SetAll('ForeColor',rgb( 255 , 255 , 255 ),'Optionbutton')  
      .txtTab.DisabledBackColor=rgb( 109 , 200 , 254 )
    endwith
endcase
this.lblG.forecolor=rgb( 0 , 0 , 0 )
*************************************************************

прописал оное самое и в ACTIVATE и в INIT

вот!

ну и ещё цють цють -

у меня на этой панельке html-часики(JavaScript). КАК ИЗБАВИТЬСЯ ОТ КОНКТЕКСТНОГО МЕНЮ браузера!?
я б их сделал на форме но Width minимум 104 pix. вот!
...
Рейтинг: 0 / 0
20.05.2004, 21:15
    #32527144
Андрей Давыдов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ещё NAVIGATE !!! (for В. Клепенин)
2 Куянов Антон

Ни куя себе!
Привет. Ничего личного.

Я в десятом классе и не помышлял прогить.
Другое было на уме.
В аттестате только одна пят:ерка по физ-ре -
(ито автоматом - т.к. как такового предмета не было -
Училище олимпийского резерва - МС по спортивному плаванию)
и пара четверок, остальные тройки.
Там где я учился - двоек не ставили:
раз сам пришел на экзамен (а не тренер) - три автоматом.
присутсвовал на лекциях - четыре.
если на лекциях был и не спал - почти всегда пять :)

А потом пошел я вумный ВУЗ - там мозги мне за полгода вправили -
так сказать - на лыжи поставили.
А через год я его бросил накуй и окончил заочно.
Как говорит мой шеф - некуй 5 лет #опу протирать.


Два раза прочел твой пост - но в чем иммено вопрос так ине понял.
...
Рейтинг: 0 / 0
21.05.2004, 01:11
    #32527222
BeeTLe.ru
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ещё NAVIGATE !!! (for В. Клепенин)
for Андрей Давыдов

ОГРОМНОЕ спасибо за столь краткий очерк о
себе! правда ,очень здорово!а что на счет того ,
что на уме в 10 классе-ДЫК ОДНО ДРУГОМУ НЕ МЕШАЕТ!!! &)

вопрос в том как сделать так чтоб внешний вид формы просто обнавлялся без потери введённых данных??? у менья же описан случай когда при выборе другова внешниво вида forma relizится а потом снова загружается,естественно все данные введенные в этой frome теряются! вот

а второе : на понели инструментов находится "обозреватель web страниц" в который "загружается" html док ,а так как ето html док => при правом клике по htmlке вызывается, не нужное мне, контекстное меню броУзера! ну вот и как от него избавиться?
...
Рейтинг: 0 / 0
21.05.2004, 09:42
    #32527436
ещё NAVIGATE !!! (for В. Клепенин)
to Куянов Антон

Самый престижный ВУЗ по обучению программистов в СПб - это СПбГУ ИТМО
факультет Информационных технологий и Программирования

http://www.ifmo.ru/index.php?out=faculty&FacultyID=10

Именно его студенты занимают первые места в мире по программированию.
Правда, на него очень сложно попасть, так как декан г.Парфёнов предпочитает находить абитуриентов сам. Зато у выпускников нет проблем с трудоустройством.
Вообще на основе школьной базы в ИТМО, как правило, не поступить, обязательно нужно доучиться на подготовительных курсах (платно) при институте.

Что касаемо меня - то я учился, когда всё только начиналось, и большие ЭВМ занимали большие машинные залы, а до появления ПК было ещё лет пятнадцать... И специальность по дипплому у меня совсем не программирование...

По Вашим вопросам:
1. Как отменить контекстное меню обозревателя - не знаю.
2. По изменению внешнего вида формы - а зачем?
...
Рейтинг: 0 / 0
21.05.2004, 15:53
    #32528547
BeeTLe.ru
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ещё NAVIGATE !!! (for В. Клепенин)
for В. Клепенин

По изменению внешнего вида формы - а зачем?

Ну чтоб это работало на подобии skinsов в winapе.

1 Можно ли как нибуть в менюшке обратиться к форме
и прописать ей refresh()??
2 Можно ли как нибудь сделать widht формы меньше 104 pix ??

На счет СПбГУ ИТМО большое спасибо ,но я с ним пролетаю т.к. у
меня дома лежит "милая" повесточка на 15 декабря 2005 г. => если
я не поступлю после 11 - ЗДРАВСТВУЙ СТРОЙБАТ!!!Вот
...
Рейтинг: 0 / 0
21.05.2004, 17:21
    #32528774
Андрей Давыдов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ещё NAVIGATE !!! (for В. Клепенин)
1. _Screen.ActiveForm.Refresh()
2. Form.MinWidth=0
...
Рейтинг: 0 / 0
21.05.2004, 17:29
    #32528783
BeeTLe.ru
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ещё NAVIGATE !!! (for В. Клепенин)
for Андрей Давыдов

ОГРОМНОЕ Тебе спасибо!!!

а насчет того Как отменить контекстное меню обозревателя ? не знаешь?
...
Рейтинг: 0 / 0
21.05.2004, 18:12
    #32528864
Андрей Давыдов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ещё NAVIGATE !!! (for В. Клепенин)
2 BeeTLe.ru

>> а насчет того Как отменить контекстное меню обозревателя ? не знаешь?

Вынь штекер мыша из системника.
...
Рейтинг: 0 / 0
21.05.2004, 18:35
    #32528895
BeeTLe.ru
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ещё NAVIGATE !!! (for В. Клепенин)
for Андрей Давыдов

>>1. _Screen.ActiveForm.Refresh()

а остальные формы???(они тоже должны обновиться)
...
Рейтинг: 0 / 0
21.05.2004, 19:45
    #32528951
Андрей Давыдов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ещё NAVIGATE !!! (for В. Клепенин)
Повесь на пункт меню:
ON BAR xxx OF xxx ;
ExecScript(;
"FOR EACH loFrm IN _Screen.Forms"+CHR(13)+;
"loFrm.Refresh()"+CHR(13)+;
ENDFOR")
...
Рейтинг: 0 / 0
21.05.2004, 19:51
    #32528955
Андрей Давыдов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ещё NAVIGATE !!! (for В. Клепенин)
ON SELECT BAR/PAD ...
...
Рейтинг: 0 / 0
21.05.2004, 22:21
    #32529075
BeeTLe.ru
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ещё NAVIGATE !!! (for В. Клепенин)
for Андрей Давыдов

а какие значения ставить вместо xxx?
и можно если не затруднит коментарии(&&),а то с этими функциями я еще
работал и не встречался.
...
Рейтинг: 0 / 0
25.05.2004, 13:55
    #32532406
BeeTLe.ru
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ещё NAVIGATE !!! (for В. Клепенин)
???
...
Рейтинг: 0 / 0
25.05.2004, 15:38
    #32532738
ещё NAVIGATE !!! (for В. Клепенин)
Пример меню для AsTopLevelForm. Такая форма выполняется вне главного окна фокса. Запускаем её следующей командой:

DO FORM mainform NAME po_Form LINKED

Здесь: mainform - имя .SCX файла формы
po_Form - глобальная переменная, позволяющая ссылаться на эту форму.

В методе Init создаём строку меню:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
DEFINE MENU MainMenu IN (this.name) BAR && Создаём строку меню
* Описание пунктов меню
DEFINE PAD mnu_oper OF MainMenu PROMPT "Операции" &&  1 -й пункт
DEFINE PAD mnu_help OF MainMenu PROMPT "Помощь"   &&  2 -й пункт и т.д.
* Создаём выпадающее меню для пункта "Операции"
ON PAD mnu_oper OF MainMenu ACTIVATE POPUP pad_part
DEFINE POPUP pad_oper MARGIN RELATIVE SHADOW
* Пункты выпадающего меню
DEFINE BAR  1  OF pad_oper PROMPT "Открыть"
DEFINE BAR  2  OF pad_oper PROMPT "\-"
DEFINE BAR  3  OF pad_oper PROMPT "Изменить вид"
* Действия при выборе пункта выпадающего меню
ON SELECTION BAR  1  OF pad_oper po_Form.MyOpen() && Вызов метода MyOpen 
ON SELECTION BAR  3  OF pad_oper ExecScript(;
     "FOR EACH loFrm IN _Screen.Forms"+CHR( 13 )+;
     "loFrm.Refresh()"+CHR( 13 )+;
     "ENDFOR")   && Запускаем скрипт для обновления всех форм
* Вызов метода Help формы непосредственно из пункта строки меню
ON SELECTION PAD mnu_help OF MainMenu po_Form.Help() 

ACTIVATE MENU MainMenu NOWAIT && Активация меню
...
Рейтинг: 0 / 0
25.05.2004, 16:14
    #32532870
ещё NAVIGATE !!! (for В. Клепенин)
Простите, опечатка...

* Создаём выпадающее меню для пункта "Операции"
ON PAD mnu_oper OF MainMenu ACTIVATE POPUP pad_oper
...
Рейтинг: 0 / 0
26.05.2004, 02:07
    #32533634
BeeTLe.ru
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ещё NAVIGATE !!! (for В. Клепенин)
for В. Клепенин

шото с формой ни чо не вышло...

строчку:
Код: plaintext
1.
2.
3.
ExecScript(;
"FOR EACH loFrm IN _Screen.Forms"+CHR( 13 )+;
"loFrm.Refresh()"+CHR( 13 )+;
ENDFOR")
я засунул в кнопку меню, в которой:
Код: 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.
if !WEXIST("frmSotrAdd")
  use gcexepath+"tabls\vid.dbf"
  REPLACE nVid WITH  1 
  use
  glKeyVid2=.T.
  glKeyVid1=.F.
  gnVid= 1 
  goTime.refresh()

else  
  if !used("vid")       && если таблица не открыта                 
    use gcexepath+"tabls\vid.dbf"
    REPLACE nVid WITH  1 
    use
  else
    select vid
    REPLACE nVid WITH  1 
  endif
  glKeyVid2=.T.
  glKeyVid1=.F.
  gnVid= 1 
  goTime.refresh()
  
  ExecScript(;
  "FOR EACH loFrm IN _Screen.Forms"+CHR( 13 )+;
  "loFrm.Refresh()"+CHR( 13 )+;
  ENDFOR")
 
endif

это ж тоже самое будет что вы написали выше???

и еще
что за переменная loFrm(где её опубликовать и что в неё поместить(я так понял переменная для ссылки на форму?)) и что за ExecScript,фокс бьет:

File 'ExecScript.prg' does not exist

если это .prg то чо там далжно быть?
...
Рейтинг: 0 / 0
26.05.2004, 08:51
    #32533742
ещё NAVIGATE !!! (for В. Клепенин)
to Антон:

Ну почитайте же FoxHelp!
В Вашем коде вызова ExecScript ошибка - отсутствует кавычка перед ENDFOR. Должно быть:

Код: plaintext
1.
2.
ExecScript("FOR EACH loFrm IN _Screen.Forms"+CHR( 13 )+;
     "loFrm.Refresh()"+CHR( 13 )+"ENDFOR") && См. мой пример

Функции ExecScript передаётся текстовая строка !

Что касаемо цикла FOR EACH .. ENDFOR, то в этом примере переменная loFrm есть переменная цикла, которая получает ссылку на объект из коллекции _Screen.Forms.
Вообще-то я бы рекомедовал вместо _Screen использовать _VFP, так как _Screen есть ссылка на главное окно фокса, которое, в принципе, может отсутствовать.
При каждой итерации цикла в переменную loFrm помещается ссылка на очередную форму из коллекции Forms. Таким образом, расположенная внутри цикла команда loFrm.Refresh() последовательно обновляет все формы коллекции.
...
Рейтинг: 0 / 0
26.05.2004, 08:59
    #32533751
Андрей Давыдов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ещё NAVIGATE !!! (for В. Клепенин)
>> Вообще-то я бы рекомедовал вместо _Screen использовать _VFP, так как _Screen есть ссылка на главное окно фокса, которое, в принципе, может отсутствовать.

Не зависимо от вида формы - все они расположены в коллекции _Screen.Forms и _Screen.ActiveForm - ссылка на активную форму.
...
Рейтинг: 0 / 0
26.05.2004, 09:52
    #32533831
ещё NAVIGATE !!! (for В. Клепенин)
to Андрей Давыдов

Согласен. Просто как-то привык всё через _VFP делать.
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / ещё NAVIGATE !!! (for В. Клепенин) / 25 сообщений из 29, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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