Автор | Сообщение |
Vlad04
|
| постоянный участник
|
Пост N: 420
Зарегистрирован: 13.10.05
|
|
Отправлено: 19.12.13 18:16. Заголовок: TsBrowse в Минигуи (продолжение)
TsBrows определяется в виде строки ПАРМЕТРОВ объекта и их значений К примеру цитата: | DEFINE TBROWSE oBrw2 ; AT 60,450 ; ALIAS cAlias ; OF Form1 ; WIDTH 330 ; HEIGHT 340 ; FONT "Verdana" ; SIZE 9 ; ON DBLCLICK CopyRec(); ON GOTFOCUS fModelo_Hab(2) ; AUTOFILTER ; CELLED EDIT; VALUE nRec; GRID |
| Здесь я собрал параметры из разных tBrows Можно или нет и какие парметры заменить выражением ( и каким) ? oBrw2:.... oBrw2:....
|
|
|
Ответов - 300
, стр:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
All
[только новые]
|
|
Vlad04
|
| постоянный участник
|
Пост N: 627
Зарегистрирован: 13.10.05
|
|
Отправлено: 04.12.16 17:39. Заголовок: Ссылка..
|
|
|
SergKis
|
| постоянный участник
|
Пост N: 1336
Зарегистрирован: 17.02.12
|
|
Отправлено: 04.12.16 18:35. Заголовок: Vlad04 пишет Компили..
Vlad04 пишет цитата: | Компилируется без ошибок, но при запуске не работает |
| Проверяйте наличие контроллов в процедуре Chang_Tbr() или перенесите TSB в конец (перед END WINDOW) в fmg файле. В каком то примере выше, я уже проделывал такую штуку и не забывайте объявлять переменную PUBLIC\PRIVATE TBROWSE_1 для DEFINE TBROWSE, в ней созданный объект tsb
|
|
|
Vlad04
|
| постоянный участник
|
Пост N: 628
Зарегистрирован: 13.10.05
|
|
Отправлено: 04.12.16 18:51. Заголовок: SergKis Однако ! П..
SergKis Однако ! Про объявление переменных думал, а вот это цитата: | перенесите TSB в конец (перед END WINDOW) в fmg |
| новость.На такую тонкость в каком-то примере не обратил внимания.
|
|
|
SergKis
|
| постоянный участник
|
Пост N: 1337
Зарегистрирован: 17.02.12
|
|
Отправлено: 04.12.16 19:01. Заголовок: Vlad04 пишет новость..
Vlad04 пишет При создании тсб (прорисовка строк) срабатывает :bChange, в нем обращение к несуществующим еще контроллам. Без него было бы все ок! Перед END WINDOW (после IDE) можно ставить вызов функции\процедуры для инициализации созданных IDE контроллов и для тсб устанавливать все блоки кода, например TBROWSE_1:bChange := {|| Change_Tsb() }
|
|
|
Vlad04
|
| постоянный участник
|
Пост N: 629
Зарегистрирован: 13.10.05
|
|
Отправлено: 04.12.16 19:29. Заголовок: SergKis Посмотрите...
SergKis Посмотрите. Как комбо подключить к какому- нибудь полю бровзе? Может где-то в коде? Или Value в сомбо это индекс Item?
|
|
|
SergKis
|
| постоянный участник
|
Пост N: 1338
Зарегистрирован: 17.02.12
|
|
Отправлено: 05.12.16 03:55. Заголовок: Vlad04 пишет Как ком..
Vlad04 пишет цитата: | Как комбо подключить к какому- нибудь полю бровзе? |
| Был пример Tsb_combo_demo2.7z и в нем 3-и поля с 3-мя сомбо связаны Скрытый текст
:bChange := {|obr,oCol,cNam,cVal,nPos| ; cNam := 'KRANK1', ; oCol := obr:GetColumn(cNam), ; cVal := Eval(oCol:bData), ; nPos := ascan(oCol:aItems, cVal), ; nPos := iif( nPos > 0, nPos, 1 ), ; SetProperty(obr:cParentWnd, cNam, "Value", nPos), ; cNam := 'KRANK2', ; oCol := obr:GetColumn(cNam), ; cVal := Eval(oCol:bData), ; nPos := ascan(oCol:aItems, cVal), ; nPos := iif( nPos > 0, nPos, 1 ), ; SetProperty(obr:cParentWnd, cNam, "Value", nPos), ; cNam := 'KRANK3', ; oCol := obr:GetColumn(cNam), ; cVal := Eval(oCol:bData), ; nPos := ascan(oCol:aItems, cVal), ; nPos := iif( nPos > 0, nPos, 1 ), ; SetProperty(obr:cParentWnd, cNam, "Value", nPos) }
| цитата: | Value в сомбо это индекс Item? |
|
Да
|
|
|
Vlad04
|
| постоянный участник
|
Пост N: 631
Зарегистрирован: 13.10.05
|
|
Отправлено: 05.12.16 14:28. Заголовок: Если задача только о..
Если задача только отображать данные в комбобоксе, то можно применить свойство DISPLAYEDIT .T. click here
|
|
|
Vlad04
|
| постоянный участник
|
Пост N: 632
Зарегистрирован: 13.10.05
|
|
Отправлено: 05.12.16 17:20. Заголовок: click here..
|
|
|
Dima
|
| |
Пост N: 6191
Зарегистрирован: 17.05.05
|
|
Отправлено: 13.12.16 18:35. Заголовок: SergKis В общем сно..
SergKis В общем снова полезли глюки , если интенсивно ездить по бровсу. По началу пропали все иконки в бровсе , после того как из бровса вышел , в главном окне потерялся IMAGE и перекалапуцало главное меню. Таймер сделан как ты и советовал. Беда с этим бровсом...
|
|
|
Петр
|
| постоянный участник
|
Пост N: 1369
Зарегистрирован: 09.10.06
|
|
Отправлено: 13.12.16 21:58. Заголовок: Dima пишет: перекал..
Dima пишет: цитата: | перекалапуцало главное меню. |
| Это как?
|
|
|
Dima
|
| |
Пост N: 6192
Зарегистрирован: 17.05.05
|
|
Отправлено: 13.12.16 22:24. Заголовок: Петр пишет: Это как..
Петр пишет: Да все посдвигалось , фон главного окна куда то пропал , картинка в главном окне улетела в пятое измерение , статус бар главного окна хаотично сменил цвета...... При чем по TsBrowse я поездил минут 5 и оставил , поработал в другой проге , затем вернулся туда же , снова поездил хаотично то клавишами то колесом мыши , вышел покурить....снова поездил ...пошел сделал кофе , ну и тд и после только начав ездить ......понеслись глюки.
|
|
|
|
Петр
|
| постоянный участник
|
Пост N: 1370
Зарегистрирован: 09.10.06
|
|
Отправлено: 13.12.16 22:36. Заголовок: А с меню что? Фон г..
А с меню что? Фон главного окна как задается? BKBRUSH? Картинка как выводится, какой командой? В TsBrowse живет таймер постоянно? Он срабатывает даже если комп переходит в режим ожидания (кофе с перекуром)? А без кофе такое случается?
|
|
|
Dima
|
| |
Пост N: 6193
Зарегистрирован: 17.05.05
|
|
Отправлено: 14.12.16 00:03. Заголовок: Петр Вопросы понял ..
Петр Вопросы понял , обмозгую завтра и отвечу. Спасибо !
|
|
|
Dima
|
| |
Пост N: 6194
Зарегистрирован: 17.05.05
|
|
Отправлено: 14.12.16 09:47. Заголовок: Петр пишет: Фон гла..
Петр пишет: цитата: | Фон главного окна как задается? BKBRUSH? |
| BACKCOLOR { 99,99,99 } Петр пишет: цитата: | Картинка как выводится, какой командой? |
| DEFINE IMAGE внутри описания окна Петр пишет: цитата: | В TsBrowse живет таймер постоянно? |
| Таймер живет в окне (WINDOWTYPE STANDARD) а уже в этом окне живут 2 TsBrowse После закрытия окна таймер должен я так понимаю , сам самоликвидироваться Петр пишет: цитата: | Он срабатывает даже если комп переходит в режим ожидания (кофе с перекуром)? |
| Получается что да DEFINE TIMER MyTimer INTERVAL 400 ACTION DoTimer(oBrw3,obrw4) This.MyTimer.Enabled := .t. END WINDOW Как только заглючил TsBrowse , начинаются глюки во всей проге.
|
|
|
Петр
|
| постоянный участник
|
Пост N: 1371
Зарегистрирован: 09.10.06
|
|
Отправлено: 14.12.16 17:31. Заголовок: По мне, так некоррек..
По мне, так некорректно обрабатываются сообщения, в часности WM_PAINT, а вот дальше без исходников - гадание на кофейной гуще. Dima пишет: И вот этот момент немного меня смущает. А на утечку ресурсов приложения смотрели GDIView Самодостаточный пример с глюками нужен.
|
|
|
Dima
|
| |
Пост N: 6195
Зарегистрирован: 17.05.05
|
|
Отправлено: 14.12.16 17:58. Заголовок: С GDIView ранее не р..
С GDIView ранее не работал. Не понятно где смотреть утечку. Вероятно показывать счетчики изменений. После "падения" уже , вижу следующее. Так в колонке BRUSH вижу 27 [+4] Bitmap 9746 [+9568] Шрифт 42 [+4] В диспетчере задач после загрузки получил на задаче цифирь 3788 а когда все рухнуло 3948 (использование памяти) При этом проц грузануло на 25 % , после чуть отпустило до 8 % , но нормально выйти не смог , снял задачу. Петр пишет: цитата: | Самодостаточный пример с глюками нужен. |
| Согласен. Не много по текущей работе разберусь и попробую сделать.
|
|
|
ММК
|
| постоянный участник
|
Пост N: 259
Зарегистрирован: 29.05.10
|
|
Отправлено: 14.12.16 18:05. Заголовок: Петр пишет: По мне,..
Петр пишет: цитата: | По мне, так некорректно обрабатываются сообщения, в часности WM_PAINT, а вот дальше без исходников - гадание на кофейной гуще. |
| Складывается впечатление, что "теряется" активное окно. Конечно таймер к этой ситуации это от лукавого :)) Ошибке уже лет десять, поэтому вот в этих исходниках она уже есть. https://cloud.mail.ru/public/8Xve/UTv9YCg65 Это первоисточник, так что может что и даст :)
|
|
|
Петр
|
| постоянный участник
|
Пост N: 1372
Зарегистрирован: 09.10.06
|
|
Отправлено: 14.12.16 18:34. Заголовок: Dima пишет: Вероятн..
Dima пишет: цитата: | Вероятно показывать счетчики изменений. |
| Да, сравнение до и после. Если все сделано аккуратно и правильно, то создали кисточку нарисовали что-то - удалили, тоже с картинками и т.д. - ресурсы нужно использовать экономно. Значит если есть разница счетчиков - ресурсы освобождаются некорректно, это в MiniGUI еще встречается - теперь нужно по возможности локализировать место утечки.
|
|
|
Dima
|
| |
Пост N: 6196
Зарегистрирован: 17.05.05
|
|
Отправлено: 14.12.16 18:47. Заголовок: Петр Понял , поигра..
Петр Понял , поиграюсь еще.
|
|
|
Петр
|
| постоянный участник
|
Пост N: 1374
Зарегистрирован: 09.10.06
|
|
Отправлено: 14.12.16 18:48. Заголовок: ММК пишет: Ошибке ..
ММК пишет: цитата: | Ошибке уже лет десять, поэтому вот в этих исходниках она уже есть. |
| И что не нашли? :HandleEvent() можно (нужно) трасить
|
|
|
Ответов - 300
, стр:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
All
[только новые]
|
|