Автор | Сообщение |
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.
|
|
|
Ответов - 300
, стр:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
All
[только новые]
|
|
Dima
|
| |
Пост N: 6617
Зарегистрирован: 17.05.05
|
|
Отправлено: 21.10.17 17:47. Заголовок: Andrey А ты ленивый..
Andrey А ты ленивый шо туши свет Поиск по сырцам GETFILE , оппа нашли а там рядом живет PUFILE , возвращаемся в SAMPLES\BASIC и обнаруживаем пример.
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 5582
Зарегистрирован: 12.09.06
|
|
Отправлено: 21.10.17 17:52. Заголовок: Блин... Искал SAVE....
Блин... Искал SAVE... Спасибо БОЛЬШОЕ Dima за наводку !
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 5588
Зарегистрирован: 12.09.06
|
|
Отправлено: 04.11.17 23:35. Заголовок: Делаю небольшой прим..
Делаю небольшой пример. Если в конце примера добавлю ещё один файл (типа так): #include "resource_avi.prg" ТО пример перестаёт собираться вообще ! c:\MiniGui\BATCH\compile.bat demo4 /e /Z Harbour 3.2.0dev (r1710180807) Copyright (c) 1999-2016, http://harbour-project.org/ Compiling 'demo4.prg'... 1 error No code generated. Compile error. Вот такая ошибка: C:\MiniGUI\include\miniprint.ch(14) Error E0004 MEMVAR declaration follows executable statement Я вообще не пользуюсь miniprint .... МиниГуи последний... Что делать ? У меня в minigui.ch рас комментированы строки: #ifndef _HMG_OUTLOG #define _HMG_OUTLOG #endif Если меняю в заголовке файла #include "minigui.ch" на #include "hmg.ch", то пример собирается нормально !!!
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 5592
Зарегистрирован: 12.09.06
|
|
Отправлено: 08.11.17 12:50. Заголовок: Пример SAMPLES\A..
Пример SAMPLES\Advanced\RCDataToFile\demo.prg Если поместить в demo.rc: 1001 RCDATA "hello.exe" - файл или несколько файлов общим размеров примерно больше 750 кб то пример не собирается !!! Вылет по ошибке: demo.c: Borland Resource Compiler Version 5.40 Copyright (c) 1990, 1999 Inprise Corporation. All rights reserved. Turbo Incremental Link 5.66 Copyright (c) 1997-2002 Borland Fatal: Access violation. Link terminated. Надо бы указать в самом demo.rc - что нельзя такого делать ! Или ключи можно подобрать для BCC 5.5.1 На bcc 5.8.2 такого нет.
|
|
|
Alex_Cher
|
| |
Пост N: 49
Зарегистрирован: 18.06.15
|
|
Отправлено: 09.11.17 08:52. Заголовок: Andrey пишет: Приме..
Andrey пишет: цитата: | Пример SAMPLES\Advanced\RCDataToFile\demo.prg |
| А у меня и ошибка ... Application: C:\MiniGUI\SAMPLES\Advanced\RCDataToFile\demo.exe Date: 11/09/17 Time: 09:47:39 Time from start: 0 days 0 hours 0 mins 0 secs Error BASE/4001 Argument error: HB_PROCESSVALUE Called from HB_PROCESSVALUE(0) Called from MAIN(20) in module: demo.prg
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 5595
Зарегистрирован: 12.09.06
|
|
Отправлено: 11.11.17 20:40. Заголовок: Проблема на Win10 дл..
Проблема на Win10 для последнего МиниГуи, на других системах всё нормально. Вот такая ошибка появляется при запуске программы: Если смотреть по коду Wait_Window(280) - моя функция: DEFINE LABEL Message ROW 20 COL nPictCol*2 + nPictHeight WIDTH nMaxWidth - nPictCol*2 - nPictWidth HEIGHT nMessHeight VALUE cMessage TRANSPARENT .T. ACTION MoveActiveWindow() OnMouseHover RC_CURSOR( "hand32" ) END LABEL // строка 280 В чём причина ошибки и как избавиться от такого ?
|
|
|
Dima
|
| |
Пост N: 6630
Зарегистрирован: 17.05.05
|
|
Отправлено: 11.11.17 22:28. Заголовок: Andrey пишет: Пробл..
Andrey пишет: цитата: | Проблема на Win10 для последнего МиниГуи, на других системах всё нормально. |
| Тоже заметил непонятный глюк с PageScript именно на дясятке , прога на Harbour упала без объяснения причин.......Вероятно что то не сростается в Harbour и win10
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 5597
Зарегистрирован: 12.09.06
|
|
Отправлено: 15.11.17 16:36. Заголовок: Использую объект TEX..
Использую объект TEXTBOX cFormat := REPL("!",35) @ ... TEXTBOX Text_1 ...... ; INPUTMASK cFormat ; .... Работает нормально. А как мне задать формат букв и цифр без перевода в верхний регистр ? Если ставить как в Харборе cFormat := REPL("Х",35) - то в TEXTBOX появляются ХХХХХХХХХХХХХХХХХХХХХ В доке не совсем понятно: InputMask String (Numeric Textbox): 9 Displays digits $ Displays a dollar sign in place of a leading space * Displays an asterisk in place of a leading space . Specifies a decimal point position , Specifies a comma position InputMask String (Non-Numeric Textbox): 9 Digits A Alphabetic Characters ! Alphabetic Characters (Uppercase Conversion) and Digits (All other characters are included in text in the position indicated by the mask) Format String (Allowed in Numeric Textbox Only): C: Displays CR after positive numbers X: Displays DB after negative numbers ( : Encloses negative numbers in parentheses E: Displays numbers in British format N: Displays Alphabetic Characters and Digits
|
|
|
Dima
|
| |
Пост N: 6631
Зарегистрирован: 17.05.05
|
|
Отправлено: 15.11.17 16:56. Заголовок: а пример глянуть ? C..
а пример глянуть ? C:\MiniGUI\SAMPLES\BASIC\INPUTMASK\character2.prg
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 5598
Зарегистрирован: 12.09.06
|
|
Отправлено: 15.11.17 17:25. Заголовок: Dima пишет: а приме..
Dima пишет: Спасибо Дима ! Понял.
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 5599
Зарегистрирован: 12.09.06
|
|
Отправлено: 19.11.17 04:04. Заголовок: Dima пишет: а приме..
Dima пишет: цитата: | а пример глянуть ? C:\MiniGUI\SAMPLES\BASIC\INPUTMASK\character2.prg |
| Глянул. Нет такого шаблона/маски для ввода одновременно Lower/Upper цифр и букв кроме формата: ! Alphabetic Characters (Uppercase Conversion) and Digits Блин, и как теперь быть ? Опять переделкой заниматься на GETBOX ? Как мне для объекта TEXTBOX задать формат букв и цифр без перевода в верхний регистр ? Ответ - никак, для TEXTBOX тоже устроит....
|
|
|
|
SergKis
|
| постоянный участник
|
Пост N: 1649
Зарегистрирован: 17.02.12
|
|
Отправлено: 19.11.17 12:18. Заголовок: Andrey пишет без пер..
Andrey пишет цитата: | без перевода в верхний регистр |
| XXXX - обеспечивает ввод как есть для текстов, а для перевода в upper\lower есть установки дополнительно. цитата: | // TEXTBOX #command @ <row>, <col> TEXTBOX <name> ; ... [ <upper: UPPERCASE> ] ; [ <lower: LOWERCASE> ] ; ... |
| как бы все есть.
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 5600
Зарегистрирован: 12.09.06
|
|
Отправлено: 19.11.17 17:41. Заголовок: SergKis пишет: как ..
SergKis пишет: Да я уже писал об этом. Попробуй в примере BASIC\INPUTMASK\character2.prg изменить: @ 110,120 TEXTBOX text_4 ; VALUE '' ; INPUTMASK 'XXXXXXXXXXXX'; Получишь на экране вместо ввода строку XXXXXXXXXXXX ... Вот и задаю вопрос: Как мне для объекта TEXTBOX задать формат букв и цифр без перевода в верхний регистр ?
|
|
|
SergKis
|
| постоянный участник
|
Пост N: 1650
Зарегистрирован: 17.02.12
|
|
Отправлено: 19.11.17 18:41. Заголовок: Andrey пишет Как мне..
Andrey пишет цитата: | Как мне для объекта TEXTBOX задать формат букв и цифр без перевода в верхний регистр ? |
| INPUTMASK убери совсем.
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 5601
Зарегистрирован: 12.09.06
|
|
Отправлено: 19.11.17 19:39. Заголовок: SergKis пишет: INPU..
SergKis пишет: НЕ могу !!! Мне нужно контролировать длину ввода текста в TEXTBOX ! Как это можно сделать без INPUTMASK ?
|
|
|
SergKis
|
| постоянный участник
|
Пост N: 1651
Зарегистрирован: 17.02.12
|
|
Отправлено: 19.11.17 20:18. Заголовок: Andrey пишет Как это..
Andrey пишет цитата: | Как это можно сделать без INPUTMASK ? |
| есть [ MAXLENGTH <maxlength> ] ; если [ FIELD <field> ] ; должно сработать по длине его для [ VALUE <value> ] ; должно сработать по длине space(20) пробуй.
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 5636
Зарегистрирован: 12.09.06
|
|
Отправлено: 17.12.17 21:11. Заголовок: Всем привет ! Делаю..
Всем привет ! Делаю контекстное меню. Не могу получить значение выбираемого меню. Вот код: STATIC nStatRet := 0 ..... DEFINE CONTEXT MENU OF &cForm FOR nI := 1 TO LEN(aMenuItem) cMenu := aMenuItem[nI] cName := "MyMenuItem" + HB_NtoS(nI) bAction := &( '{|| nStatRet := VAL( "' + HB_NtoS(nI) + '" ) }' ) cImg := aMenuImg[nI] lChk := .F. lDis := .F. _DefineMenuItem( cMenu, bAction, cName, cImg, lChk, lDis, , Font1 , , .F., .F. ) NEXT SEPARATOR MENUITEM "Выход" ACTION {|| nStatRet := 0 } FONT Font2 IMAGE aMenuImg[nLen] END MENU _ShowContextMenu(cForm, nY, nX, .f. ) // ПОКАЗ ВЫПАДАЕЩЕГО МЕНЮ InkeyGui(100) ? nStatRet, VALTYPE(nStatRet) Почему то всегда возвращает 0 ?
|
|
|
SergKis
|
| постоянный участник
|
Пост N: 1671
Зарегистрирован: 17.02.12
|
|
Отправлено: 17.12.17 22:22. Заголовок: Andrey пишет Почему ..
Andrey пишет цитата: | Почему то всегда возвращает 0 ? |
| Со времен clipper static переменные в макро не доступны. Т.е. пиши прямо в блок кода или исп. private. Т.к. предст. код - функция, то все просто. У себя делаю STATIC FUNC wMainStatusBar( nPos, oWn, nKy ) ... aMdiChild := GetWndMdiChildAll( .T. ) nItems := Len( aMdiChild ) If nItems > 0 PRIVATE nMsg := 0 aItems := {} AEval(aMdiChild, {|ow| AAdd(aItems, { ow:Title, .T., .F., ow:GetProp('wMainMsg') }) }) AEval(aItems , {|ai,ni| aItems[ni][4] := 'm->nMsg := '+hb_ntos(ai[4]) }) // text item , image, disable, block hb_AIns(aItems, 1, { 'WINDOWS IN OPERATION :', .F. , .T. , Nil }, .T.) hb_AIns(aItems, 2, { '' }, .T.) nY := oMain:ClientHeight - oMain:StatusBar:Height * nItems nX := oMain:ClientWidth - oMain:StatusBar:Width(5) - ; oMain:StatusBar:Width(4) If WndContextMenu( nY, nX, aItems ) .and. m->nMsg > 0 oMain:PostMsg( m->nMsg ) EndIf EndIf ... там где у тебя bAction := &( '{|| nStatRet := VAL( "' + HB_NtoS(nI) + '" ) }' ) добавь If HB_ISCHAR(bAction); bAction := &( '{|| '+bAction+' }' ) Else ... EndIf короче писать бкдет
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 5637
Зарегистрирован: 12.09.06
|
|
Отправлено: 18.12.17 07:53. Заголовок: SergKis пишет: Со в..
SergKis пишет: цитата: | Со времен clipper static переменные в макро не доступны. |
| А кто мне помогал этот код писать ? Я и делал аналогично как в примере Tsb_composite(1.8).7z : Скрытый текст
STATIC nStaticLang ...... Forma_Lang(cForm) InkeyGui(10) // menu работает через очередь ! ? nStaticLang // вернулась из Forma_Lang(cForm) .... FUNCTION Forma_Lang(cForm) ........ DEFINE CONTEXT MENU OF &cForm MENUITEM "Русский / Russian" ACTION {|| nStaticLang := 1 } FONT Font2 IMAGE aFlags[1] MENUITEM "Украинский / Ukrainian" ACTION {|| nStaticLang := 2 } FONT Font2 IMAGE aFlags[2] MENUITEM "Белорусский / Byelorussian" ACTION {|| nStaticLang := 3 } FONT Font2 IMAGE aFlags[3] MENUITEM "Казахский / Kazakh" ACTION {|| nStaticLang := 4 } FONT Font2 IMAGE aFlags[4] MENUITEM "Английский / English" ACTION {|| nStaticLang := 5 } FONT Font2 IMAGE aFlags[5] SEPARATOR MENUITEM "Удалить значение / Delete value" ACTION {|| nStaticLang := 0 } FONT Font1 SEPARATOR MENUITEM "Выход / Exit" ACTION {|| nStaticLang := -1 } FONT Font1 END MENU ....
| PRIVATE nMsg := 0 m->nMsg А с каких пор для PRIVATE переменных можно ставить m-> ? Я всегда ставил только для PUBLIC .... Остановился на варианте: PRIVATE nMsg m->nMsg := 0 .... bAction := &( '{|| m->nMsg := VAL( "' + HB_NtoS(nI) + '" ) }' ) .... При PRIVATE nMsg := 0 - ошибка компиляции: Harbour 3.2.0dev (r1711152234) form_New.prg(340) Warning W0002 Ambiguous reference, assuming memvar 'NMSG' No code generated. СПАСИБО БОЛЬШОЕ !
|
|
|
SergKis
|
| постоянный участник
|
Пост N: 1672
Зарегистрирован: 17.02.12
|
|
Отправлено: 18.12.17 08:39. Заголовок: Andrey пишет А кто м..
Andrey пишет цитата: | А кто мне помогал этот код писать ? |
| 1. ACTION {|| nStaticLang := 1 } и 2. &( '{|| m->nMsg := VAL( "' + HB_NtoS(nI) + '" ) }' ) почувствуй разницу SergKis пишет цитата: | пиши прямо в блок кода или исп. private |
| 1-е прямо в коде 2-е исп. private
|
|
|
Ответов - 300
, стр:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
All
[только новые]
|
|