Автор | Сообщение |
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
[только новые]
|
|
Петр
|
| постоянный участник
|
Пост N: 1384
Зарегистрирован: 09.10.06
|
|
Отправлено: 17.12.16 20:44. Заголовок: Haz пишет: Это все..
Haz пишет: цитата: | Это все не системно. Может открыть тему Проблема TS - варианты - решение. |
| Как-то я не могу правильно сформулировать свое отношение к предложению. Ну во-первых, скажу честно, tsbrowse я не использую. Поэтому о проблемах TS могу прочитать только на форуме. Т.е. допустим смотрю в код - да, возможно я бы не так написал, но ведь работает.. Или, допустим вопрос поднятый Димой, он вообще-то не к TS относился, за использование ресурсов GUI приложением отвечает разработчик. Во-вторых, вроде никто и не запрещает и сейчас открывать темы - но как-то не задалось, наверное. И так что-бы кто-то внятно описал проблему да еще привел пример - нет не видел
|
|
|
Петр
|
| постоянный участник
|
Пост N: 1385
Зарегистрирован: 09.10.06
|
|
Отправлено: 17.12.16 20:56. Заголовок: ММК пишет: С учетом..
ММК пишет: цитата: | С учетом того , что все другие бровсы работают нормально есть смысл посмотреть их и сравнить с TS. |
| Это не о MiniGUI, все остальные бровсы построены на LISTVIEW и обладают ограниченой функциональностью в сравнении с TS или другими словами в MiniGUI есть над чем поработать ММК пишет: цитата: | Менется , если убирать утечки памяти , хотя возникает она и без использования иконок. |
| Утечка памяти это не абстрактное понятие, все утечки (памяти, USER - GDI object) можно как-то выявить и попытаться локализировать. ММК пишет: цитата: | Ведь если оставлять этот бровс , то в него еще придется много чего добавлять |
| Опять же, мне кажется, что это не про MiniGUI, на текущем этапе развития TS нет чем заменить.
|
|
|
ММК
|
| постоянный участник
|
Пост N: 264
Зарегистрирован: 29.05.10
|
|
Отправлено: 18.12.16 10:42. Заголовок: Петр пишет: цитат..
Петр пишет: цитата: | цитата: С учетом того , что все другие бровсы работают нормально есть смысл посмотреть их и сравнить с TS. Это не о MiniGUI, все остальные бровсы построены на LISTVIEW и обладают ограниченой функциональностью в сравнении с TS или другими словами в MiniGUI есть над чем поработать |
| TS был написан лет десять назад для FW. Мануэль Меркадо красиво написал, выложил все исходники , но довести уже не хватило здоровья ( в прямом смысле ). В FW это не единственный бровс поэтому есть с чем сравнивать и ,наверное, есть смысл т.к. эта проблема сохранилась с тех времен. Петр пишет: цитата: | Утечка памяти это не абстрактное понятие, все утечки (памяти, USER - GDI object) можно как-то выявить и попытаться локализировать. |
| Конечно. Здесь все понятно. Это просто моя неудачная попытка донести свое мнение :) Что проблема связана не с утечкой и не с временной задержкой. Петр пишет: цитата: | Опять же, мне кажется, что это не про MiniGUI, на текущем этапе развития TS нет чем заменить. |
| :)
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 5271
Зарегистрирован: 12.09.06
|
|
Отправлено: 21.12.16 15:24. Заголовок: Всем привет ! Как от..
Всем привет ! Как отцентровать шапку таблицы ? Для ячеек таблицы нашёл как сделать: oBrw1:aColumns[5]:nAlign := nMakeLong( DT_CENTER, DT_CENTER ) oBrw1:aColumns[5]:nHAlign := nMakeLong( DT_CENTER, DT_CENTER )
|
|
|
Dima
|
| |
Пост N: 6222
Зарегистрирован: 17.05.05
|
|
Отправлено: 21.12.16 15:27. Заголовок: Andrey пишет: oBrw1..
Andrey пишет: цитата: | oBrw1:aColumns[5]:nHAlign := nMakeLong( DT_CENTER, DT_CENTER ) |
| сам и ответил
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 5272
Зарегистрирован: 12.09.06
|
|
Отправлено: 21.12.16 16:05. Заголовок: Dima пишет: сам и о..
Dima пишет: Не центрует в шапке таблицы картинку ! Может по другому надо ?
|
|
|
Dima
|
| |
Пост N: 6223
Зарегистрирован: 17.05.05
|
|
Отправлено: 21.12.16 16:45. Заголовок: у меня примерно так ..
у меня примерно так и вроде ж по центру. oBrw3:GetColumn("prm"):uBmpHead :=abmp3h[2] oBrw3:GetColumn("prm"):cHeading :="" oBrw3:SetColSize("prm", 25 ) oBrw3:GetColumn("prm"):nhAlign :=nMakeLong( DT_CENTER, DT_CENTER )
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 5275
Зарегистрирован: 12.09.06
|
|
Отправлено: 22.12.16 15:37. Заголовок: Dima пишет: у меня ..
Dima пишет: цитата: | у меня примерно так и вроде ж по центру. |
| Попробуй 3 штуки (картинки) подряд вывести в заголовок таблицы. Как получиться ? У меня 1-я картинка центрируется, остальные нет.
|
|
|
Dima
|
| |
Пост N: 6226
Зарегистрирован: 17.05.05
|
|
Отправлено: 22.12.16 15:59. Заголовок: Andrey пишет: У мен..
Andrey пишет: цитата: | У меня 1-я картинка центрируется, остальные нет |
| что то не так закодил Пример для одной колонки oBrw3:GetColumn( "dels" ):uBmpCell :={|| if( (oBrw3:calias)->dels,abmp3[1],NIL) } oBrw3:GetColumn( "dels" ):lCheckBox := FALSE oBrw3:GetColumn( "dels" ):nAlign :=nMakeLong( DT_CENTER, DT_CENTER ) oBrw3:GetColumn( "dels" ):bdata:={||""} oBrw3:GetColumn("dels"):uBmpHead :=abmp3h[1] oBrw3:GetColumn("dels"):cHeading :="" oBrw3:SetColSize("dels", 25 ) // пробовал 125 - центрует норм oBrw3:GetColumn("dels"):nhAlign :=nMakeLong( DT_CENTER, DT_CENTER ) В бровсе у меня 2 колонки у которых в Header живет BMP , все по центру. Возможно сама BMP у тебя "широкая"
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 5276
Зарегистрирован: 12.09.06
|
|
Отправлено: 22.12.16 16:36. Заголовок: Dima пишет: Возможн..
Dima пишет: цитата: | Возможно сама BMP у тебя "широкая" |
| Да нет - все одинаковые 28 пикселей. У меня 4 колонки с картинками. В ячейках нормально центрируются, в шапке таблицы 2 центрируются, 2 нет. Поменял местами и ГЛЮК вылез опять - центрирование в шапке работает только на 2 колонки ! Попробуй у себя добавить (сделать дубль) ещё 2х колонок с картинками....
|
|
|
Dima
|
| |
Пост N: 6227
Зарегистрирован: 17.05.05
|
|
Отправлено: 22.12.16 16:48. Заголовок: Дай полный код 2 и 4..
Дай полный код 2 и 4 колонки
|
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 5277
Зарегистрирован: 12.09.06
|
|
Отправлено: 22.12.16 17:59. Заголовок: Вот код, обработка п..
Вот код, обработка полей в цикле: FOR nI := 1 TO LEN(aPole) nJ++ ADD COLUMN TO TBROWSE oBrw1 // добавить новую колонку в TBROWSE ........ oBrw1:aColumns[nJ]:lEdit := .T. ........ If cTypeField == "L" // для полей Logic oBrw1:aColumns[nJ]:cHeading := "" // заголовок колонки обнулить oBrw1:SetColSize( nJ, 48 ) // ширина колонкм oCol := oBrw1:aColumns[nJ] oCol:lCheckBox := .T. // virtual checkbox oCol:nEditMove := 0 oCol:cPicture := "" // шаблон колонки убрать oCol:cDataType := "L" // !!! IF cField == "MARK" oCol:uBmpCell := {|| IF( (ALIAS())->MARK, LoadImage("tbCheckT28"), ) } oCol:uBmpHead := {|| LoadImage( "tbCheckF28" ) } // картинка шапки таблицы oCol:aBitMaps := { LoadImage("tbCheckT28") } ELSEIF cField == "PRINT" oCol:uBmpCell := {|| IF( (ALIAS())->PRINT, LoadImage( "TBPRINT32" ), ) } oCol:uBmpHead := {|| LoadImage( "tbPrint32" ) } // картинка шапки таблицы oCol:aBitMaps := { LoadImage("TBPRINT32") } ELSEIF cField == "MAIL1" oCol:uBmpCell := {|| IF( (ALIAS())->MAIL1, LoadImage( "tbMail32" ), ) } oCol:uBmpHead := {|| LoadImage( "tbMail32" ) } // картинка шапки таблицы oCol:aBitMaps := { LoadImage( "tbMail32" ) } ELSEIF cField == "MAIL2" oCol:uBmpCell := {|| IF( (ALIAS())->MAIL2, LoadImage( "tbMail32R" ), ) } // картинка в ячейке oCol:uBmpHead := {|| LoadImage( "tbMail32R" ) } // картинка шапки таблицы oCol:aBitMaps := { LoadImage( "tbMail32R" ) } ENDIF oCol:bData := {||Nil} oCol:cData := '{||Nil}' oCol:nAlign := nMakeLong( DT_CENTER, DT_CENTER ) oCol:nHAlign := nMakeLong( DT_CENTER, DT_CENTER ) // обработка до ввода // обработка после ввода Else ......... NEXT
|
|
|
Dima
|
| |
Пост N: 6228
Зарегистрирован: 17.05.05
|
|
Отправлено: 22.12.16 18:09. Заголовок: Andrey пишет: oCol:..
Andrey пишет: цитата: | oCol:uBmpHead := {|| LoadImage( "tbMail32" ) } // картинка шапки таблицы oCol:aBitMaps := { LoadImage( "tbMail32" ) } |
| А вот при таком подходе у тебя будет утечка памяти и уже в этой теме обсуждали. Сделай не в цикле , что то там не стыкуется. Ты ведь в начале писал что центруется правильно только второй Header , остальные нет. По факту правильно отцентрованы 2 и 3 Header
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 5278
Зарегистрирован: 12.09.06
|
|
Отправлено: 22.12.16 18:45. Заголовок: Dima пишет: Сделай ..
Dima пишет: цитата: | Сделай не в цикле , что то там не стыкуется. |
| Поля все в настройках, без цикла сделать не возможно.... Dima пишет: цитата: | По факту правильно отцентрованы 2 и 3 Header |
| На картинках же видно 3 и 4 Header не отцентрованы !
|
|
|
Dima
|
| |
Пост N: 6229
Зарегистрирован: 17.05.05
|
|
Отправлено: 22.12.16 22:31. Заголовок: Andrey пишет: nJ++..
Andrey пишет: цитата: | nJ++ ADD COLUMN TO TBROWSE oBrw1 // добавить новую колонку в TBROWSE ........ oBrw1:aColumns[nJ]:lEdit := .T. |
| Перенеси это код после Andrey пишет: цитата: | If cTypeField == "L" // для полей Logic |
| + после ELSE скопируй Весь код не видно ........я не телепат
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 5279
Зарегистрирован: 12.09.06
|
|
Отправлено: 23.12.16 11:53. Заголовок: Dima пишет: Весь ко..
Dima пишет: цитата: | Весь код не видно ........я не телепат |
| Код как в Tsb_config.
|
|
|
Dima
|
| |
Пост N: 6232
Зарегистрирован: 17.05.05
|
|
Отправлено: 23.12.16 13:30. Заголовок: Andrey Сколько ты т..
Andrey Сколько ты там сутки уже справиться не можешь ? Смейся дальше... Сделай простой пример без цикла и убедись что Header с BMP нормально центруется.
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 5280
Зарегистрирован: 12.09.06
|
|
Отправлено: 23.12.16 16:32. Заголовок: Dima пишет: Сделай ..
Dima пишет: цитата: | Сделай простой пример без цикла и убедись что Header с BMP нормально центруется. |
| Этот пример уже сделал. Центрируется нормально. В цикле не центрируется... Пока бросил с этим разбираться, другая работа появилась.
|
|
|
Dima
|
| |
Пост N: 6233
Зарегистрирован: 17.05.05
|
|
Отправлено: 23.12.16 16:40. Заголовок: Andrey пишет: Этот ..
Andrey пишет: цитата: | Этот пример уже сделал. Центрируется нормально. В цикле не центрируется... |
|
|
|
|
i3t4j6
|
| |
Пост N: 135
Зарегистрирован: 12.06.06
|
|
Отправлено: 07.02.17 17:42. Заголовок: Добрый день! Начиная..
Добрый день! Начиная с декабрьской версии стала появляться такая ошибка: Error BASE/5001 MiniGUI Error: SENDMESSAGE Called from SENDMESSAGE(0) Called from TSBROWSE:RESIZE(9982) Called from TCONTROL:HANDLEEVENT(923) ... Ошибка появляется при вводе новой записи в стандартном TsBrowse. Если забить строку 9982, то ошибка не появляется
|
|
|
Ответов - 300
, стр:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
All
[только новые]
|
|