Автор | Сообщение |
|
| постоянный участник
|
Пост N: 558
Зарегистрирован: 13.10.05
|
|
Отправлено: 10.05.16 11:38. Заголовок: Форма, BtnTextBox, TextBox и DatePicker
На форме есть объекты разные, речь идет о BtnTextBox, TextBox и DatePicker, т.е объектах , имеющих свойство Field. 1)Действительно, если это поле заполнить ссылкой на символьное поле, к примеру - dogovor->NR_DOG, то при открытии формы НОМЕР договора отображается. Если поле числовое, к примеру - dogovor->SUMM , то при попытке открыть форму программа вываливается. 2) При закрытии формы, внесенные изменения никак в базе не сохраняются. Commit не помогает. Или нужно Replace выполнять ? Форма строится в Дизайнере.
|
|
|
Ответов - 38
, стр:
1
2
All
[только новые]
|
|
|
| |
Пост N: 956
Зарегистрирован: 20.02.11
|
|
Отправлено: 10.05.16 11:57. Заголовок: Vlad04 пишет: Comm..
Vlad04 пишет: Commit тут не поможет , эти контролы не осуществляют прямое редактирование базы. Они всего лишь читают символьное поле в массив и дальше работа идет с массивом. Во всяком случае так Combo работает, думаю и другие контролы тоже так. Чтобы сохранить изменения в базе нужно это делать самостоятельно , читая значение из контрола и выполняя Replace Поправлюсь ! Выше это не списочные контролы , работают не с массивом а с простым значением которое читают из базы. Для TextBox это символьное, для DatePicker - Data В остальном все так ЗЫ TextBox понимает числа если ему указать что он NUMERIC
|
|
|
|
| moderator
|
Пост N: 942
Зарегистрирован: 11.02.10
|
|
Отправлено: 10.05.16 12:39. Заголовок: Vlad04 пишет: объек..
Vlad04 пишет: цитата: | объектах , имеющих свойство Field. |
| Рекомендую для начала изучить базовый пример в папке samples\Basic\DATA_BOUND Думаю, что после этого изучения, станет понятно, как работать с такими обьектами
|
|
|
|
| постоянный участник
|
Пост N: 559
Зарегистрирован: 13.10.05
|
|
Отправлено: 10.05.16 19:28. Заголовок: gfilatov2002 Прим..
gfilatov2002 Пример изучил. Построил аналогичный в IDE DATA_BOUND, IDE, сравнил. 1) Если поле NUMERIC, то в дизайнере DataType NUMERIC НЕ присваивается ! С Ошибкой вылетает
|
|
|
|
| постоянный участник
|
Пост N: 560
Зарегистрирован: 13.10.05
|
|
Отправлено: 10.05.16 19:31. Заголовок: И ещё Win_1...
И ещё цитата: | Win_1.Text_1.Save Win_1.Text_2.Save Win_1.Text_3.Save Win_1.Date_4.Save Win_1.Check_5.Save Win_1.Edit_6.Save |
| Наверно, можно как-то в цикле сделать по объектам
|
|
|
|
| |
Пост N: 957
Зарегистрирован: 20.02.11
|
|
Отправлено: 10.05.16 20:29. Заголовок: Vlad04 пишет: 1) Ес..
Vlad04 пишет: цитата: | 1) Если поле NUMERIC, то в дизайнере DataType NUMERIC НЕ присваивается ! С Ошибкой вылетает |
| открыл в дизайнере пример TEXTBOX - все присваивается http://shot.qip.ru/00QkpQ-2Myy9DUE8/
|
|
|
|
| постоянный участник
|
Пост N: 561
Зарегистрирован: 13.10.05
|
|
Отправлено: 10.05.16 20:48. Заголовок: И даже в том пример..
И даже в том примере, что я выложил ? Присваивается.Но если форму сохранить , а потом снова открыть , то тип поля CHARACTER Компилируется, но при запуске вот такой лог цитата: | Error BASE/1100 Argument error: TRIM</p><BR> Called from RTRIM(0) Called from _SETVALUE(399) Called from _DATATEXTBOXREFRESH(1069) Called from _REFRESH(5246) Called from _REFRESHDATACONTROLS(1466) Called from _ACTIVATEWINDOW(1381) Called from DOMETHOD(4654) Called from MAIN(9) |
|
|
|
|
|
| |
Пост N: 958
Зарегистрирован: 20.02.11
|
|
Отправлено: 10.05.16 20:53. Заголовок: Vlad04 пишет: Навер..
Vlad04 пишет: цитата: | Наверно, можно как-то в цикле сделать по объектам |
| Можно конечно, пару недель назад на форуме было "все контролы на форме" . только нужно быть уверенным что все контролы на форме имеют метод Save
|
|
|
|
| |
Пост N: 959
Зарегистрирован: 20.02.11
|
|
Отправлено: 10.05.16 21:08. Заголовок: Vlad04 пишет: Присв..
Vlad04 пишет: цитата: | Присваивается.Но если форму сохранить , а потом снова открыть , то тип поля CHARACTER К |
| Проверил - есть такой косяк в дизайнере поскольку им не пользуюсь - не сразу сообразил как протетсть. PS. не пользуюсь по причине жутких тормозов при редактировании большой формы и ее перемещении по экрану, настолько жутких , что невозможно пользоваться дизайнером. Ситуация немного улучшается если в исходниках дизайнера закоментить прорисовку сетки, но все равно есть тормоза при перемещении формы - идет перезаполнение пропертей контролов. По уму все прорисовки надо выполнять один раз - при отпускании левой кнопки мыши , а не по событию MOVE окна. Еще давно попытался переделать, сразу не вышло , так и забросил дизайнер, все прописываю руками.
|
|
|
|
| постоянный участник
|
Пост N: 562
Зарегистрирован: 13.10.05
|
|
Отправлено: 11.05.16 06:27. Заголовок: Проверил - есть так..
цитата: | Проверил - есть такой косяк в дизайнере |
| Печально. В данном конкретном случае я это обойду.Насчет тормозов дизайнера- есть конечно, но для меня не критично. Не надо создавать слишком сложные формы
|
|
|
|
| moderator
|
Пост N: 943
Зарегистрирован: 11.02.10
|
|
Отправлено: 11.05.16 11:20. Заголовок: Haz пишет: есть так..
Haz пишет: цитата: | есть такой косяк в дизайнере |
| Уже поправил код Ide с учетом Ваших замечаний, добавил также пример DATA_BOUND для проверки Можно обновиться через меню Help->Update Haz пишет: Я также практически не использую дизайнер форм, но все же рекомендую посмотреть простую утилиту xForm, которая имеет очень компактный код и будет обновлена в следующей сборке
|
|
|
|
| постоянный участник
|
Пост N: 563
Зарегистрирован: 13.10.05
|
|
Отправлено: 11.05.16 11:51. Заголовок: gfilatov2002 Огром..
gfilatov2002 Огромное спасибо за оперативность.
|
|
|
|
|
| |
Пост N: 960
Зарегистрирован: 20.02.11
|
|
Отправлено: 11.05.16 11:53. Заголовок: gfilatov2002 пишет: ..
gfilatov2002 пишет: цитата: | рекомендую посмотреть простую утилиту xForm, |
| Григорий , я ее смотрю постоянно , возможно со временем будет достойная замена дизайнеру. Идеи там заложены удобные. Кстати в ней та же болячка присутствует - при таскании окна по экрану идет попытка постоянного рисования сетки, а процесс этот не быстрый Хотя в xForm это прорисовка значительно быстрее, да и точки там отключаемые ))
|
|
|
|
| moderator
|
Пост N: 944
Зарегистрирован: 11.02.10
|
|
Отправлено: 11.05.16 11:59. Заголовок: Haz пишет: при таск..
Haz пишет: цитата: | при таскании окна по экрану идет попытка постоянного рисования сетки |
| Прорисовку сетки в этой утилите можно отменить (сейчас по нажатию кнопки, а в следующей версии это будет checkbutton)
|
|
|
|
| |
Пост N: 961
Зарегистрирован: 20.02.11
|
|
Отправлено: 11.05.16 12:03. Заголовок: gfilatov2002 пишет: ..
gfilatov2002 пишет: цитата: | Прорисовку сетки в этой утилите можно отменить (сейчас по нажатию кнопки, а в следующей версии это будет checkbutton) |
| Да есть такое - забыл сразу написать
|
|
|
|
| |
Пост N: 962
Зарегистрирован: 20.02.11
|
|
Отправлено: 11.05.16 12:19. Заголовок: gfilatov2002 пишет: ..
gfilatov2002 пишет: цитата: | а в следующей версии это будет checkbutton) |
| Можно в настройки вынести шаг сетки ? На некоторых формах у меня 10 это много, использую 5
|
|
|
|
| moderator
|
Пост N: 945
Зарегистрирован: 11.02.10
|
|
Отправлено: 11.05.16 13:24. Заголовок: Haz пишет: Можно в ..
Haz пишет: цитата: | Можно в настройки вынести шаг сетки ? |
| Добавил два недокументированных параметра в файл настройки setup.ini: цитата: | VertDotsStep=5 HorzDotsStep=5 |
|
|
|
|
|
| |
Пост N: 963
Зарегистрирован: 20.02.11
|
|
Отправлено: 11.05.16 13:43. Заголовок: gfilatov2002 пишет: ..
gfilatov2002 пишет: цитата: | Добавил два недокументированных параметра в файл настройки setup.ini: |
| Может интересный инструмент получиться
|
|
|
|
| постоянный участник
|
Пост N: 564
Зарегистрирован: 13.10.05
|
|
Отправлено: 11.05.16 21:07. Заголовок: xForm А примеры..
|
|
|
|
| |
Пост N: 964
Зарегистрирован: 20.02.11
|
|
Отправлено: 11.05.16 22:17. Заголовок: Vlad04 пишет: А при..
Vlad04 пишет: А нету
|
|
|
|
| постоянный участник
|
Пост N: 565
Зарегистрирован: 13.10.05
|
|
Отправлено: 12.05.16 06:45. Заголовок: Haz А нету Посмеял..
Haz Посмеялся от души . На мой взгляд у xForm, кроме тех, что вы указали есть следующие недостатки : Формат сохранения данных формы не совсем удобный - вручную его редактировать сложно, легко ошибиться.
|
|
|
|
| moderator
|
Пост N: 946
Зарегистрирован: 11.02.10
|
|
Отправлено: 12.05.16 11:23. Заголовок: Vlad04 пишет: А при..
Vlad04 пишет: Добавил небольшой пример для тестирования xForm Vlad04 пишет: цитата: | Формат сохранения данных формы не совсем удобный - вручную его редактировать сложно |
| Этот недостаток иногда может быть достоинством, поскольку редактирование формы будет осуществляться только средствами этой утилиты
|
|
|
|
|
| постоянный участник
|
Пост N: 566
Зарегистрирован: 13.10.05
|
|
Отправлено: 14.05.16 18:45. Заголовок: Как правильно выраже..
Как правильно выражение записать через проперти SetProperty( "Win_1", "Text_1",.....
|
|
|
|
| постоянный участник
|
Пост N: 984
Зарегистрирован: 17.02.12
|
|
Отправлено: 14.05.16 18:52. Заголовок: Vlad04 пишет:Как пра..
Vlad04 пишет: цитата: | Как правильно ... записать |
| DoMethod("Win_1", "Text_1", "Save")
|
|
|
|
| постоянный участник
|
Пост N: 567
Зарегистрирован: 13.10.05
|
|
Отправлено: 14.05.16 19:42. Заголовок: Ок Не понимаю я ещё..
Ок Не понимаю я ещё это. Когда , что и почему
|
|
|
|
| постоянный участник
|
Пост N: 985
Зарегистрирован: 17.02.12
|
|
Отправлено: 14.05.16 19:53. Заголовок: Vlad04 см. MiniGui...
Vlad04 см. MiniGui.chm в конце каждого описания есть PROPERTIES, EVENTS, METHOD
|
|
|
|
| постоянный участник
|
Пост N: 571
Зарегистрирован: 13.10.05
|
|
Отправлено: 18.05.16 13:59. Заголовок: gfilatov2002 Добави..
gfilatov2002 цитата: | Добавил небольшой пример для тестирования xForm |
| С созданием формы в утилите проблем нет. А как встроить эту форму в программу ?
|
|
|
|
| |
Пост N: 15
Зарегистрирован: 22.09.13
|
|
Отправлено: 26.05.16 16:15. Заголовок: Ткните, пожалуйста н..
Ткните, пожалуйста носом в вышеупомянутую утилиту xForm!!! Где она обитает? И в пример тоже...
|
|
|
|
| |
Пост N: 5676
Зарегистрирован: 17.05.05
|
|
Отправлено: 26.05.16 16:23. Заголовок: fokinal21 Лезем в C..
fokinal21 Лезем в C:\MiniGUI\Doc\ChangeLog.txt там поиск по XFORM и далее видим дорогу типа C:\MiniGUI\UTILS\xForm\
|
|
|
|
| постоянный участник
|
Пост N: 989
Зарегистрирован: 17.02.12
|
|
Отправлено: 26.05.16 18:14. Заголовок: Vlad04 пишет:С созда..
Vlad04 пишет: цитата: | С созданием формы в утилите проблем нет. А как встроить эту форму в программу ? |
| есть кнопочка 010101, которая создает myform.prg - из набранных контролов формы
|
|
|
|
| постоянный участник
|
Пост N: 581
Зарегистрирован: 13.10.05
|
|
Отправлено: 31.05.16 09:43. Заголовок: Пример тот же. Контр..
Пример тот же. Контрол DATEPICKER подключен к базе. И если в базе поле не заполнено, он все равно кукую-то дату отображает(или текущую или предыдущей записи) . Так же нельзя почистить дату , т.е просто сделать пустой. Есть ли какие решения?
|
|
|
|
| |
Пост N: 1000
Зарегистрирован: 20.02.11
|
|
Отправлено: 31.05.16 11:12. Заголовок: Vlad04 пишет: ак же..
Vlad04 пишет: цитата: | ак же нельзя почистить дату , т.е просто сделать пустой. Есть ли какие решения? |
| DEFINE DATEPICKER <ControlName> [ ID <nId> ] [ PARENT <ParentWindowName> ] COL <nCol> ROW <nRow> [ VALUE <dValue> ] [ FIELD <FieldName> ] [ WIDTH <nWidth> ] [ FONTNAME <cFontName> ] [ FONTSIZE <nFontSize> ] [ FONTBOLD < .T. | .F.> ] [ FONTITALIC < .T. | .F.> ] [ FONTUNDERLINE < .T. | .F.> ] [ FONTSTRIKEOUT < .T. | .F.> ] [ TOOLTIP <cToolTipText> ] [ BACKCOLOR <anBackColor> ] [ FONTCOLOR <anFontColor> ] [ TITLEBACKCOLOR <anTitleBackColor> ] [ TITLEFONTCOLOR <anTitleFontColor> ] [ TRAILINGFONTCOLOR <trlFontColor> ] [ RANGEMIN <dRangeMin> ] [ RANGEMAX <dRangeMax> ] [ SHOWNONE < .T. | .F.> ] [ UPDOWN < .T. | .F.> ] [ RIGHTALIGN < .T. | .F.> ] [ DATEFORMAT <cDateFormat> ] [ ONGOTFOCUS <OnGotFocusProcedure> | <bBlock> ] [ ONCHANGE <OnChangeProcedure> | <bBlock> ] [ ONLOSTFOCUS <OnLostFocusProcedure> | <bBlock> ] [ ONENTER <OnEnterProcedure> | <bBlock> ] [ HELPID <nHelpId> ] [ INVISIBLE < .T. | .F.> ] [ NOTABSTOP < .T. | .F.> ] END DATEPICKER
|
|
|
|
|
| постоянный участник
|
Пост N: 582
Зарегистрирован: 13.10.05
|
|
Отправлено: 31.05.16 11:43. Заголовок: Понятно, но не превы..
Понятно, но не превычно как-то
|
|
|
|
| постоянный участник
|
Пост N: 587
Зарегистрирован: 13.10.05
|
|
Отправлено: 14.06.16 09:49. Заголовок: ComboBox Работает с..
ComboBox Работает с Базой. цитата: | DEFINE COMBOBOX Combo_OSNOVANIE ROW 400 COL 140 WIDTH 150 HEIGHT 100 ITEMS {" Устава"," от себя лично "} FONTNAME 'Arial' TOOLTIP "Основание, на котором руководит Организацией" END COMBOBOX |
| Хотелось бы в базе сохранять значение ITEMS ( а не Value) и из базы считывать при открытии. Свойства VALUESOURCE , ITEMSOURCE вроде бы не подходят
|
|
|
|
| постоянный участник
|
Пост N: 588
Зарегистрирован: 13.10.05
|
|
Отправлено: 15.06.16 13:59. Заголовок: Домучил Combo. Може..
Домучил Combo. Может и не все правильно - но работает с базой. 2 варианта 1-й в базе сохраняется Value 2-й - DisPlayValue Combo
|
|
|
|
| постоянный участник
|
Пост N: 589
Зарегистрирован: 13.10.05
|
|
Отправлено: 20.06.16 15:20. Заголовок: Menu Построено в ди..
Menu Построено в дизайнере. При загрузке программы для некоторых пользователей надо скрыть некоторые строки основного меню. Но параметры, влияющие на меню, программа получает уже после загрузки. Как нибудь можно переопределить некоторые элементы уже созданного меню?
|
|
|
|
| постоянный участник
|
Пост N: 4974
Зарегистрирован: 12.09.06
|
|
Отправлено: 20.06.16 20:57. Заголовок: Vlad04 пишет: Как н..
Vlad04 пишет: цитата: | Как нибудь можно переопределить некоторые элементы уже созданного меню? |
| Поставь в ON INIT формы функцию, а в этой функции делай что хочешь: SetProperty( ThisWindow.Name, "ЭлементМеню", "Enabled" , .F.) // блокировать объект SetProperty( ThisWindow.Name, "ЭлементМеню", "Enabled" , .T.) // разблокировать объект
|
|
|
|
| постоянный участник
|
Пост N: 590
Зарегистрирован: 13.10.05
|
|
Отправлено: 21.06.16 09:36. Заголовок: Немного не понятно к..
Немного не понятно как правильно писать? Элемент меню у меня такой цитата: | DEFINE POPUP "Сервис" MENUITEM "Индексы" ACTION {|| dbSelect('DBLIST'),CreaTBrows('dbList.UKS',0)} MENUITEM "Пользователи" ACTION {|| dbSelect('USERLIST'),CreaTBrows('USERList.UKS',0)} END POPUP |
| Я хочу заблокировать ВТОРУЮ строку - MENUITEM "Пользователи"
|
|
|
|
| постоянный участник
|
Пост N: 1007
Зарегистрирован: 17.02.12
|
|
Отправлено: 21.06.16 10:01. Заголовок: Vlad04 Для управлен..
Vlad04 Для управления меню надо использовать свойство NAME DEFINE MAIN MENU [ OF<ParentWindowName> ] [ DEFINE ] [ MENU ] POPUP <cPopupCaption> [ NAME <cPopupName> ] [ IMAGE <cImage> ] [ FONT <cFont> ] MENUITEM <cItemCaption> ACTION <ActionProcedureName> | <bBlock> [ NAME <MenuItemName>] [ IMAGE <cImageName> ] [ CHECKMARK <cImage> ] [ FONT <cFont> ] [ CHECKED ] [ DISABLED ] [ MESSAGE <cMessage> ] [ BREAKMENU ] .... и управлять #command ENABLE MENUITEM <control> OF <form>; => ; _EnableMenuItem ( <"control"> , <"form"> ) #command DISABLE MENUITEM <control> OF <form>; => ; _DisableMenuItem ( <"control"> , <"form"> ) #command CHECK MENUITEM <control> OF <form>; => ; _CheckMenuItem ( <"control"> , <"form"> ) #command UNCHECK MENUITEM <control> OF <form>; => ; _UnCheckMenuItem ( <"control"> , <"form"> ) где <control> значение NAME
|
|
|
Ответов - 38
, стр:
1
2
All
[только новые]
|
|