Автор | Сообщение |
Andrey
|
| постоянный участник
|
Пост N: 1929
Зарегистрирован: 12.09.06
|
|
Отправлено: 15.11.11 21:36. Заголовок: Примеры из Минигуи -ошибки, вопросы.....
Всем привет. Взялся смотреть примеры из МиниГуи, так не все работают. Может кто подскажет что там "допилить" нужно ? А заодно может и исправить и добавить новые.... Очень красочный пример: \MiniGUI\SAMPLES\Advanced\AVI_Animation - не работает под Win7 (наверно AVI-шки нет в ресурсах) Предложение Григорию: Можно ли добавить еще один пример с отдельным AVI-файлом в ресурсах проекта и показом такого же бегунка ? Пример: \MiniGUI\SAMPLES\Advanced\Tsb_filter - вылетает на ХР -------------------------------------------------------------------------------- Harbour MiniGUI Errorlog File Harbour MiniGUI Extended Edition 2.0.1 - 2011.09.21 -------------------------------------------------------------------------------- Date: 11/15/2011 Time: 22:13:24 Error BASE/1124 Argument error: LEFT Called from LEFT(0) Called from SCANSOFT(195) Called from MAIN(84) Пример: \MiniGUI\SAMPLES\BASIC\MsgEdit - не собирается... Z:\MiniGUI\SAMPLES\BASIC\MsgEdit>call ..\..\..\batch\compile.bat demo /L shell32 Harbour 3.1.0dev (Rev. 17042) Copyright (c) 1999-2011, http://harbour-project.org/ Compiling 'demo.prg'... Lines 20133, Functions/Procedures 30 Generating C source output to 'demo.c'... Done. Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland demo.c: Error E2141 demo.prg 993: Declaration syntax error *** 1 errors in Compile *** C compile error.
|
|
|
Ответов - 301
, стр:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
All
[только новые]
|
|
Andrey
|
| постоянный участник
|
Пост N: 2916
Зарегистрирован: 12.09.06
|
|
Отправлено: 23.07.13 12:30. Заголовок: Haz пишет: Form_9.G..
Haz пишет: цитата: | Form_9.Grid_log.Value := Len(aList) |
| Спасибо БОЛЬШОЕ !
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 2927
Зарегистрирован: 12.09.06
|
|
Отправлено: 16.08.13 22:44. Заголовок: Всем доброй ночи... ..
Всем доброй ночи... Подскажите как проконтролировать ввод названия папки: M->cPubDirFlaska := "TEST\" ...... @ 128, 20 + 60 TEXTBOX Text_2 ; WIDTH 500 ; VALUE M->cPubDirFlaska ; FONT "Courier New" Size 12 BOLD ; ON LOSTFOCUS {|| M->cPubDirFlaska := AllTrim(Form_5.Text_2.Value) } Т.е. если юзер забыл в конце добавить знак "\", то нужно его добавить автоматом... Заранее спасибо за помощь !
|
|
|
Dima
|
| |
Пост N: 3401
Зарегистрирован: 17.05.05
|
|
Отправлено: 16.08.13 22:55. Заголовок: Andrey пишет: Т.е. ..
Andrey пишет: цитата: | Т.е. если юзер забыл в конце добавить знак "\", то нужно его добавить автоматом... |
| Тупо проверить символ справа например или устроить разбор строки.
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 2928
Зарегистрирован: 12.09.06
|
|
Отправлено: 17.08.13 10:19. Заголовок: Dima пишет: Тупо пр..
Dima пишет: цитата: | Тупо проверить символ справа например или устроить разбор строки. |
| А как ? Я не могу понять как это реализовать в МиниГуи ? Где ставить вызов обрабатываемой функции ? Сама функция есть: Function MyFixDir(cDir) cDir := AllTrim(cDir) IF SubStr(cDir,Len(cDir),1) # "\" cDir := cDir + "\" ENDIF RETURN cDir
|
|
|
PSP
|
| постоянный участник
|
Пост N: 902
Зарегистрирован: 27.01.07
|
|
Отправлено: 17.08.13 10:28. Заголовок: Andrey пишет: Я не ..
Andrey пишет: цитата: | Я не могу понять как это реализовать в МиниГуи ? Где ставить вызов обрабатываемой функции ? |
| У тебя ж есть блок кода в ON LOSTFOCUS. Туда и вставь.
|
|
|
Dima
|
| |
Пост N: 3403
Зарегистрирован: 17.05.05
|
|
Отправлено: 17.08.13 10:29. Заголовок: Andrey пишет: А как..
Andrey пишет: Andrey пишет: цитата: | M->cPubDirFlaska := "TEST\" |
| Вот так наверное M->cPubDirFlaska :=Твоя функция
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 2929
Зарегистрирован: 12.09.06
|
|
Отправлено: 17.08.13 12:30. Заголовок: PSP пишет: У тебя ж..
PSP пишет: цитата: | У тебя ж есть блок кода в ON LOSTFOCUS. Туда и вставь. |
| Dima пишет: цитата: | Вот так наверное M->cPubDirFlaska :=Твоя функция |
| Не пашет !!! Только потом сообразил, что нужно перепоказать значение в TEXTBOX Text_2 .... Вот так работает: @ 128, 20 + 60 TEXTBOX Text_2 ; WIDTH 500 ; VALUE M->cPubDirFlaska ; ON LOSTFOCUS {|| M->cPubDirFlaska := MyFixDir(Form_5.Text_2.Value) } Сама функция: Function MyFixDir(cDir) cDir := AllTrim(cDir) IF SubStr(cDir,Len(cDir),1) # "\" cDir := cDir + "\" ENDIF Form_5.Text_2.Value := cDir RETURN cDir Спасибо за подсказку !
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 2930
Зарегистрирован: 12.09.06
|
|
Отправлено: 19.08.13 18:36. Заголовок: Возможно ли выведенн..
Возможно ли выведенный объект на форме поменять цвет ? Допустим есть объект @ 275,20 PROGRESSBAR Progress_1 ; RANGE 0,100 ; VALUE 0; WIDTH 530 HEIGHT 25 После завершения пробега бегунка, я хочу закрасить его другим цветом. Как это сделать ? Может пример есть ?
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 2932
Зарегистрирован: 12.09.06
|
|
Отправлено: 20.08.13 12:50. Заголовок: В Клипере и Харборе ..
В Клипере и Харборе есть отличная функция: ColorWin() Replaces a color attribute in a screen region Есть ли аналог такой функции в МиниГуи ?
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 2937
Зарегистрирован: 12.09.06
|
|
Отправлено: 22.08.13 18:19. Заголовок: Помогите понять ошиб..
Помогите понять ошибку. Прога сваливается с непонятной периодичностью... Ошибка вот такая: Time from start: 0 days 0 hours 5 mins 0 secs Error: Non Modal Window Win_Zaiv can't be activated when a Modal window is active. Called from _ACTIVATEWINDOW(1303) Called from DOMETHOD(4654) Called from CHANGE_ZAIVKI(343) Программа "сидит" в трее и функцию CHANGE_ZAIVKI(343) вызываю по таймеру через каждые 5 минут. Как долго работает прога, не знаю... Может свалиться и через 5 минут или через час... Непонятки сплошные...
|
|
|
Dima
|
| |
Пост N: 3446
Зарегистрирован: 17.05.05
|
|
Отправлено: 22.08.13 18:22. Заголовок: Andrey пишет: Non M..
Andrey пишет: цитата: | Non Modal Window Win_Zaiv can't be activated when a Modal window is active. |
| Не модальное окно Win_Zaiv не может быть активировано когда модальное окно активно. PS Прошу прощения за мой плохой англо русский перевод
|
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 2938
Зарегистрирован: 12.09.06
|
|
Отправлено: 22.08.13 18:25. Заголовок: Dima пишет: Не мода..
Dima пишет: цитата: | Не модальное окно Win_Zaiv не может быть активировано когда модальное окно активно. |
| Как такое может быть ? Работает прога нормально, посылает на сайт данные... а потом бац: Non Modal Window Win_Zaiv can't be activated when a Modal window is active.
|
|
|
Haz
|
| |
Пост N: 85
Зарегистрирован: 20.02.11
|
|
Отправлено: 22.08.13 18:26. Заголовок: с окнами разберись
Андрей , а что за окно Win_Zaiv? судя по ошибке ты пытаешься его активировать при активном модальном окне Проверь все окна
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 2939
Зарегистрирован: 12.09.06
|
|
Отправлено: 22.08.13 20:26. Заголовок: Andrey пишет: Прогр..
Andrey пишет: цитата: | Программа "сидит" в трее и функцию CHANGE_ZAIVKI(343) вызываю по таймеру через каждые 5 минут. |
| Не правильно написал. Скрытый текст Основной модуль: DEFINE WINDOW Form_1 ; AT 0,0 ; WIDTH 0 HEIGHT 0 ; TITLE PROGRAM ; MAIN NOSHOW ; NOTIFYICON '1MAIN_ICON' ; ..... DEFINE TIMER Timer_1 ; INTERVAL (M->TimeUpdate * 60) * 1000 ; ACTION AutoCheckZaiv() END WINDOW ..... Procedure AutoCheckZaiv() If !lActive lActive := .T. lInet := IsConnected() // см. InetState.prg IF lInet // Проверка доступности интернета ZaivkaSite_NoWin() // Выбираю и копирую из базы записи на сайт ....................... lActive := .F. Endif Return /////////////////////// Другой файл: FUNCTION ZaivkaSite_NoWin() LOCAL cDbfZaivIzm,cDbfZaivZip cDbfZaivIzm := "test_site.dbf" // создание БД измененных записей cDbfZaivZip := CHANGE_ZAIVKI(cDbfZaivIzm,M->cPubPathTemp,M->dPubZaivChancg,"NoWin") IF LEN(cDbfZaivZip) > 0 SaveToSiteZaivka2(cDbfZaivZip,M->cPubPathTemp,"NoWin") // отправка архива на сайт ENDIF RETURN NIL ............... FUNCTION CHANGE_ZAIVKI(cDbfZaivIzm,cPathDbf,dZaivka,cTypeWin) LOCAL cTitle := "Подготовка измененных записей" LOCAL cDbfZip := "" DEFAULT cTypeWin TO "" DEFINE WINDOW Win_Zaiv ; ROW 0 COL 0 ; WIDTH 480 ; HEIGHT 240 ; TITLE cTitle ; ICON "ICON2SITE" ; CHILD ; NOSIZE NOMAXIMIZE NOMINIMIZE; FONT 'Tahoma' SIZE 10 ; ON INIT { || cDbfZip := InitChangeZaivki(cDbfZaivIzm,cPathDbf,dZaivka,cTypeWin) } ............. END WINDOW Win_Zaiv.Center Win_Zaiv.Activate RETURN cDbfZip //////////////////////////////////////////////////////////// // Инициализация формы FUNCTION InitChangeZaivki(cDbfZaivIzm,cPathDbf,dZaivka,cTypeWin) ........... // открытие общей базы cFileDbf := M->cPubPathZaiv + "dbase.dbf" bErrHandler := ErrorBlock( { | VAR | BREAK( VAR ) } ) BEGIN SEQUENCE USE ( cFileDbf ) Alias BASEMAIN CODEPAGE "RU866" NEW SHARED RECOVER cMsg := "Ошибка ! НЕ могу открыть базу !" + CRLF + CRLF + cFileDbf MsgStop( cMsg , MSGTITLE ) Win_Zaiv.Release() RETURN "" END SEQUENCE ErrorBlock( bErrHandler ) // IF MyOpenSprav(@cErr) //открытие справочников ELSE cMsg := "Ошибка ! НЕ смог открыть СПРАВОЧНИКИ !" + CRLF + CRLF + cErr MsgStop( cMsg , MSGTITLE ) Win_Zaiv.Release() RETURN "" ENDIF ....... и т.д.
| Вроде всегда при ошибках делаю закрытие окна Win_Zaiv.Release() ! Вот прога уже три часа нормально в трее сидит, не ломается. Или нужно еще что-то делать, для обработок ошибок ?
|
|
|
Haz
|
| |
Пост N: 86
Зарегистрирован: 20.02.11
|
|
Отправлено: 22.08.13 21:16. Заголовок: самое простое - сде..
самое простое - сделать Win_Zaiv модальным окном а не CHILD
|
|
|
SergKis
|
| постоянный участник
|
Пост N: 227
Зарегистрирован: 17.02.12
|
|
Отправлено: 22.08.13 22:19. Заголовок: Andrey пишет:Или нуж..
Andrey пишет: цитата: | Или нужно еще что-то делать |
| В AutoCheckZaiv() надо отключать timer на время выполнения работ и включать timer по завершению снова, где-то на эту тему мы уже общались
|
|
|
sashaBG
|
| постоянный участник
|
Пост N: 125
Зарегистрирован: 15.09.05
|
|
Отправлено: 22.08.13 22:29. Заголовок: надо отключать timer на время выполнения работ
Я тоже так думаю
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 2941
Зарегистрирован: 12.09.06
|
|
Отправлено: 24.08.13 10:10. Заголовок: SergKis пишет: В Au..
Haz пишет: цитата: | самое простое - сделать Win_Zaiv модальным окном а не CHILD |
| Не ставиться ! Если меняю на: DEFINE WINDOW Win_Zaiv ; ........... TITLE cTitle ; MODAL; NOSIZE NOMAXIMIZE NOMINIMIZE; ........ То при сборке выдает кучу ошибок: Source\Zaiv_to_Site.prg(310) Error E0030 Syntax error "syntax error at 'WINDOW'" Source\Zaiv_to_Site.prg(341) Error E0030 Syntax error "syntax error at '.'" Source\Zaiv_to_Site.prg(342) Error E0030 Syntax error "syntax error at '.'" и т.д. SergKis пишет: цитата: | В AutoCheckZaiv() надо отключать timer на время выполнения работ и включать timer по завершению снова, где-то на эту тему мы уже общались |
| Пересмотрел форум, не нашел. Помню что вы рекомендовали, а что точно не помню. Если несложно, пожалуйста повторите что и как нужно сделать ? Заранее БОЛЬШОЕ спасибо.
|
|
|
Haz
|
| |
Пост N: 87
Зарегистрирован: 20.02.11
|
|
Отправлено: 24.08.13 10:24. Заголовок: Не ставиться
Andrey пишет: цитата: | TITLE cTitle ; MODAL; NOSIZE NOMAXIMIZE NOMINIMIZE; |
| Синтаксис описания модального окна отличается от не модального. Сравни по мануалу. В частности там нет NOMAXIMIZE NOMINIMIZE
|
|
|
SergKis
|
| постоянный участник
|
Пост N: 232
Зарегистрирован: 17.02.12
|
|
Отправлено: 24.08.13 17:20. Заголовок: Andrey пишет: повтор..
Andrey пишет: цитата: | повторите что и как нужно сделать |
| Procedure AutoCheckZaiv() SetProperty('Form_1', 'Timer_1', 'Enabled', .F.) // выкл. или Form_1.Timer_1.Enabled := .F. ... SetProperty('Form_1', 'Timer_1', 'Enabled', .T.) // вкл. или Form_1.Timer_1.Enabled := .T. Return
|
|
|
Ответов - 301
, стр:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
All
[только новые]
|
|