Автор | Сообщение |
Andrey
|
| постоянный участник
|
Пост N: 1929
Зарегистрирован: 12.09.06
|
|
Отправлено: 15.11.11 21:36. Заголовок: Примеры из Минигуи -ошибки, вопросы..... (продолжение)
Всем привет. Взялся смотреть примеры из МиниГуи, так не все работают. Может кто подскажет что там "допилить" нужно ? А заодно может и исправить и добавить новые.... Очень красочный пример: \MiniGUI\SAMPLES\Advanced\AVI_Animation - не работает под Win7 (наверно AVI-шки нет в ресурсах) Предложение Григорию: Можно ли добавить еще один пример с отдельным AVI-файлом в ресурсах проекта и показом такого же бегунка ? Пример: \MiniGUI\SAMPLES\Advanced\DisplayMode - не работает под ХР и далее.... Пример: \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: 3624
Зарегистрирован: 12.09.06
|
|
Отправлено: 12.09.14 20:04. Заголовок: gfilatov2002 пишет: ..
gfilatov2002 пишет: цитата: | У меня работает такой пример (см.ниже) |
| Сделал тест на базе этого примера - https://cloud.mail.ru/public/fb23fc2d8f87%2FPROGRESSBAR_4.7z По сети работает без ошибок ! Единственно что не смог сделать - это корректное прекращение индексации по крестику. Подскажите пожалуйста как это сделать ?
|
|
|
Dima
|
| |
Пост N: 4208
Зарегистрирован: 17.05.05
|
|
Отправлено: 12.09.14 21:00. Заголовок: Andrey пишет: Един..
Andrey пишет: цитата: | Единственно что не смог сделать - это корректное прекращение индексации по крестику |
| Если оборвать индексацию файла , то индекс будет битым или я чего не понял.... PS Пример не смотрел.
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 3625
Зарегистрирован: 12.09.06
|
|
Отправлено: 12.09.14 21:57. Заголовок: Dima пишет: Если об..
Dima пишет: цитата: | Если оборвать индексацию файла , то индекс будет битым или я чего не понял.... |
| Подождать пока не закончится индексация этого файла, а остальные прервать.
|
|
|
gfilatov2002
|
| moderator
|
Пост N: 642
Зарегистрирован: 11.02.10
|
|
Отправлено: 12.09.14 22:07. Заголовок: Andrey пишет: Подож..
Andrey пишет: цитата: | Подождать пока не закончится индексация этого файла, а остальные прервать. |
| Посмотри, как прерывается цикл в примере из папки samples\Basic\StopWatch и попробуй использовать эту идею в цикле индексации
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 3626
Зарегистрирован: 12.09.06
|
|
Отправлено: 13.09.14 00:03. Заголовок: gfilatov2002 пишет: ..
gfilatov2002 пишет: цитата: | Посмотри, как прерывается цикл в примере из папки samples\Basic\StopWatch |
| Идея понятна, спасибо ! Пример исправил - https://cloud.mail.ru/public/1b3427b9e886%2FPROGRESSBAR_4a.7z А как по крестику отловить нажатие мышки ? Там в функции CreateDualProgressBar() окно модальное, не знаю как сделать обработку.
|
|
|
gfilatov2002
|
| moderator
|
Пост N: 643
Зарегистрирован: 11.02.10
|
|
Отправлено: 13.09.14 15:41. Заголовок: Andrey пишет: как п..
Andrey пишет: цитата: | как по крестику отловить нажатие мышки ? |
| Попробуй использовать для этого событие ON INTERACTIVECLOSE
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 3627
Зарегистрирован: 12.09.06
|
|
Отправлено: 13.09.14 18:35. Заголовок: gfilatov2002 пишет: ..
gfilatov2002 пишет: цитата: | Попробуй использовать для этого событие ON INTERACTIVECLOSE |
| Я и поставил его туда уже ! Не собирается исходник !!! См. пример выше !
|
|
|
SergKis
|
| постоянный участник
|
Пост N: 414
Зарегистрирован: 17.02.12
|
|
Отправлено: 13.09.14 18:58. Заголовок: Andrey вот так соби..
Andrey вот так собирает: Скрытый текст
DEFINE WINDOW Form_2Index ; ROW 0 COL 0 ; WIDTH 455 HEIGHT 320 ; TITLE cTitle ; MODAL NOSIZE ; ON INTERACTIVECLOSE MyExitIndex() ; FONT 'Tahoma' SIZE 12
| MyExitIndex() - должен возвращать .T./.F. для ON INTERACTIVECLOSE, определи lExit - она NIL
|
|
|
gfilatov2002
|
| moderator
|
Пост N: 644
Зарегистрирован: 11.02.10
|
|
Отправлено: 13.09.14 19:04. Заголовок: Andrey пишет: См. п..
Andrey пишет: Попробуй изменить так: DEFINE WINDOW Form_2Index ; ROW 0 COL 0 ; WIDTH 455 HEIGHT 320 ; TITLE cTitle ; /*WINDOWTYPE*/ MODAL ; NOSIZE ; FONT 'Tahoma' SIZE 12 ; ON INTERACTIVECLOSE { || MyExitIndex() }
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 3628
Зарегистрирован: 12.09.06
|
|
Отправлено: 13.09.14 21:12. Заголовок: SergKis пишет: MyEx..
SergKis пишет: цитата: | MyExitIndex() - должен возвращать .T./.F. для ON INTERACTIVECLOSE, определи lExit - она NIL |
| Это я просто сократил уже после проб. Просмотрел. Первоначально было: lExit := MsgYesNo( cMsg, "Exit", .T. ) IF lExit
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 3629
Зарегистрирован: 12.09.06
|
|
Отправлено: 13.09.14 21:29. Заголовок: Все теперь собираетс..
Все теперь собирается, а прерывать индексацию не получается ! Вылетает программа: Error MGERROR/0 Window: Form_2Index is not defined. Program terminated. Called from MSGMINIGUIERROR(72) Called from DOMETHOD(4648) Called from CLOSEDUALPROGRESSBAR(336) Called from NTXCREATE100(191) Вот исправленный исходник - https://cloud.mail.ru/public/5a291a67d2e6%2FPROGRESSBAR_4b.7z
|
|
|
|
gfilatov2002
|
| moderator
|
Пост N: 645
Зарегистрирован: 11.02.10
|
|
Отправлено: 13.09.14 22:06. Заголовок: Andrey пишет: Вылет..
Andrey пишет: Попробуй изменить функцию так: FUNCTION CloseDualProgressBar() if iswindowdefined(Form_2Index) Form_2Index.Release endif DO MESSAGE LOOP RETURN NIL
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 3630
Зарегистрирован: 12.09.06
|
|
Отправлено: 13.09.14 22:38. Заголовок: gfilatov2002 пишет: ..
gfilatov2002 пишет: цитата: | Попробуй изменить функцию так: |
| Один раз работает, Окно MsgInfo("Нажата отмена индексации !") не выводит. И на третий раз при отказе - сваливается !!! Error MGERROR/0 Control: PrgBar_1 Of Form_2Index Not defined. Program terminated. Called from MSGMINIGUIERROR(72) Called from SETPROPERTY(3662) Called from NTXDUALPROGRESS(212) Может вообще убрать этот крестик закрытия окна ?
|
|
|
gfilatov2002
|
| moderator
|
Пост N: 646
Зарегистрирован: 11.02.10
|
|
Отправлено: 13.09.14 22:45. Заголовок: Andrey пишет: Может..
Andrey пишет: цитата: | Может вообще убрать этот крестик закрытия окна ? |
| Вероятно, это лучший вариант - не будет соблазна нажать Или попробуй использовать класc NOAUTORELEASE
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 3632
Зарегистрирован: 12.09.06
|
|
Отправлено: 13.09.14 23:58. Заголовок: Ну тогда окончательн..
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 3637
Зарегистрирован: 12.09.06
|
|
Отправлено: 29.09.14 13:03. Заголовок: Можно ли пример Mini..
Можно ли пример MiniGUI\SAMPLES\Applications\SendMail переделать для отправки по почте mail.ru или yandex.ru ? То есть исправить для протокола SSL ? Там используется oSocket := TSMTP():New()
|
|
|
gfilatov2002
|
| moderator
|
Пост N: 661
Зарегистрирован: 11.02.10
|
|
Отправлено: 29.09.14 14:06. Заголовок: Andrey пишет: То ес..
Andrey пишет: цитата: | То есть исправить для протокола SSL ? |
| Нет, поскольку класс TSMTP не поддерживает SSL Поддержка SSL есть только в библиотеке HBTIP в связке с библиотекой HBSSL. Также потребуются две доп.библиотеки из поставки OpenSSL (инсталлятор Win32OpenSSL_Light-1_0_0g.exe). Итого команда сборки выглядит так: цитата: | hbmk2 -lhbtip -lhbssl -llibeay32 -lssleay32 mail.prg |
| Пример отправки почты выглядит так: цитата: | #require "hbssl" #require "hbtip" REQUEST __HBEXTERN__HBSSL__ #include "simpleio.ch" PROCEDURE Main( cFrom, cPassword, cTo ) IF ! tip_SSL() ? "Error: Requires SSL support" wait RETURN ENDIF hb_default( @cFrom , "test@yandex.ru" ) hb_default( @cPassword, "parol" ) hb_default( @cTo , "mail@mail.ru" ) ? hb_SendMail( ; "smtp.yandex.ru", ; 465, ; cFrom, ; cTo, ; NIL /* CC */, ; {} /* BCC */, ; "It is a test message", ; "It is a test subject", ; NIL /* attachment */, ; cFrom, ; cPassword, ; "", ; NIL /* nPriority */, ; NIL /* lRead */, ; .T. /* lTrace */, ; .F., ; NIL /* lNoAuth */, ; NIL /* nTimeOut */, ; NIL /* cReplyTo */, ; .T. ) wait RETURN |
| Вот такие дела
|
|
|
Dima
|
| |
Пост N: 4220
Зарегистрирован: 17.05.05
|
|
Отправлено: 29.09.14 15:05. Заголовок: gfilatov2002 пишет: ..
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 3638
Зарегистрирован: 12.09.06
|
|
Отправлено: 29.09.14 16:08. Заголовок: Dima пишет: И еще в..
Dima пишет: цитата: | И еще возможно придется ставить пакет Visual C++ Redistributables вот от сюда |
| Это для компиляции, или для каждого клиента (юзера) где стоит программа ?
|
|
|
Dima
|
| |
Пост N: 4221
Зарегистрирован: 17.05.05
|
|
Отправлено: 29.09.14 16:12. Заголовок: Andrey пишет: для к..
Andrey пишет: цитата: | для каждого клиента (юзера) где стоит программа ? |
| Для каждого , ну если Винда не обновляется конечно. Проверять надо.
|
|
|
Ответов - 301
, стр:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
All
[только новые]
|
|