On-line: гостей 0. Всего: 0 [подробнее..]
АвторСообщение
постоянный участник


Пост 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:....



Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 181 , стр: 1 2 3 4 5 6 7 8 9 10 All [только новые]


постоянный участник




Пост N: 7723
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 09.04.24 19:03. Заголовок: Есть длинная строка ..


Есть длинная строка адреса.
В ТСБ естественно будет показываться только то кол-во символов, которые заданы в picture.
Допустим 30 символов.
А можно сделать чтобы показывало последние 30 символов из строки в колонке ?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 4548
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 09.04.24 19:29. Заголовок: А можно сделать чтоб..



 цитата:
А можно сделать чтобы показывало последние 30 символов из строки в колонке ?


oCol:bDecode := {|ca| ca := trim(ca), iif( Len(ca) > 30, "..."+right(ca, 30), ca ) }

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 7724
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 09.04.24 23:04. Заголовок: Спасибо БОЛЬШОЕ ! :..


Спасибо БОЛЬШОЕ !

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 175
Зарегистрирован: 12.07.06
ссылка на сообщение  Отправлено: 12.04.24 13:52. Заголовок: Не пойму почему


ТСБ работает с массивом
...
s1 := 0
aKv - массив [4,11]
...
Br:SetArrayTo(aKv,,aZg,aWi,aFoot,aPict,aAlgn)

Хочу при старте заполнить подвал второй колонки, в этой колонке цифры и надо подсчитать сумму
Делаю так:
Br:aColumns[2]:cFooting := {|| aEval(Br:aArray, {|aVal,nElm| s1 += aVal[2]}), str(s1,10,2)}
но aEval почему-то проходит по массиву 4 раза, т.е сумма получается в четыре заза больше.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 4549
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 12.04.24 14:33. Заголовок: alex_II Тсб - это п..


alex_II
Тсб - это просто рисование данных в таблице по настройке, ничего не считает. В данном случае прошло 4-е прохода прорисовки. Надо посчитать и записать в нужные колонки :cFooting := cValToChar(...) или в переменные, поля dbf, ... и в :cFooting := блок кода для получения строки из них (для каждой колонки), тогда по каким то действиям меняете значения данных для этих блоков кода и делаете переотображение тсб всех строк oBrw:Refresh(...), курсора oBrw:DrawSelect(), oBrw:DrawFooters()

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 176
Зарегистрирован: 12.07.06
ссылка на сообщение  Отправлено: 12.04.24 17:30. Заголовок: Я извиняюсь, но ниче..


Я извиняюсь, но ничего не понял.
Я описал ситуацию, которая происходит при старте программы, когда еще никаких действий не производилось.
ТСБ прорисовывает таблицу по данным из массива и я пытаюсь заполнить подвал до всех действий.
Тут вопрос думаю не к ТСБ, а а к блоку кода, тем более он у меня вложенный.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 4550
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 12.04.24 17:49. Заголовок: alex_II 1. Тсб - эт..


alex_II
1. Тсб - это просто рисование данных в таблице по настройке, ничего не считает.
2. Выносите свой блок кода, подсчета итоговых сумм, из тсб отдельно
3. Создаете массив для показа в тсб
4. Запускаете подсчет сумм по колонкам массива, т.е. исполняете свой блок кода, итоги запомнили
5. DEFINE TBROWSE ... => в колонки переносите итоги oCol:cFooting := <итоги из массива, как строка> END TBROWSE
6. Тсб нарисуется вместе с итогами (за 4-ре раза, потому в вашей ситуации учетверение сумм, так не надо делать)
Если делаем правку строк с суммами в строках массива тсб :lEdit := .T., то итоги надо пересчитать, т.е. запускаем блок кода подсчета сумм п.2, получив новые итоги, заносим их результаты в нужные oCol:cFooting и делаем oBrw:DrawFooters() - перерисовать подвал.
Если, например, у вас есть массив итогов aItig, то можно исп. блок кода в oCol:cFooting := {|| hb_ntos(aItog[3]) } и так во все колонки. Блок кода будет обеспечивать данные дли Footers по выполнению oBrw:DrawFooters()
PS
Примеры APP_OOPREPORT смотрите, там есть итоги в массивах, создаваемых по кнопкам

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 177
Зарегистрирован: 12.07.06
ссылка на сообщение  Отправлено: 12.04.24 18:53. Заголовок: Спасибо за развёрнут..


Спасибо за развёрнутый ответ

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 7725
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 12.04.24 19:50. Заголовок: SergKis пишет: Прим..


SergKis пишет:

 цитата:
Примеры APP_OOPREPORT смотрите, там есть итоги в массивах, создаваемых по кнопкам


Можно ещё глянуть этот пример - SAMPLES\Advanced\Tsb_array_4
там тоже идёт подсчёт итогов !

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 178
Зарегистрирован: 12.07.06
ссылка на сообщение  Отправлено: 18.04.24 20:21. Заголовок: После редактирования линия выше ячейки затирается!


Пример: ...\MiniGUI\SAMPLES\Advanced\Tsb_array_2\demo5.prg
Сперва думал, что сам как-то повлиял своими настройками, убил на это день.
У меня белый фон и вид получается удручающий

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 7727
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 18.04.24 23:17. Заголовок: alex_II пишет: У ме..


alex_II пишет:

 цитата:
У меня белый фон и вид получается удручающий


Картинку в студию !
Красивый и продвинутый ТСБ смотри \SAMPLES\Advanced\Tsb_5Win

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 179
Зарегистрирован: 12.07.06
ссылка на сообщение  Отправлено: 19.04.24 05:31. Заголовок: https://i.postimg.cc..



Нужен именно такой вид, максимально приближенный к распечатке.
Там. где была корректировка, сетка нарушается.
В 21 году вроде эта тема обсуждалась, но с ходу не нашел когда.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 7728
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 19.04.24 07:59. Заголовок: Попробуй увеличить в..


Попробуй увеличить высоту ячеек.
      oBrw:nHeightCell  += 6 


Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 1966
Зарегистрирован: 20.02.11
ссылка на сообщение  Отправлено: 19.04.24 08:09. Заголовок: alex_II пишет: Там...


alex_II пишет:

 цитата:
Там. где была корректировка, сетка нарушается.


В методе Edit() координаты окна редактирования рассчитываются не пойми как и для каждого контрола отдельно. Погрешность выравнивается подгонкой через массив из 4 значений.
Выхода из положения два
1 править edit()
2 перед редактированием задавать сдвиги в массиве корректировки координат окна редактирования. Высота строки бровса тут не при чем т ее изменение не поможет

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 7729
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 19.04.24 09:26. Заголовок: Пример - SAMPLES\..


Пример - SAMPLES\Advanced\Tsb_Basic\demo.prg
   oBrw:nHeightCell += 10         // к высоте ячеек таблицы добавим 
oBrw:nHeightHead += 5 // к высоте шапки таблицы добавим

// GetBox встраиваем в ячейку, задаем отступы
oBrw:aEditCellAdjust[1] += 4 // cell_Y + :aEditCellAdjust[1]
oBrw:aEditCellAdjust[2] += 2 // cell_X + :aEditCellAdjust[2]
oBrw:aEditCellAdjust[3] -= 5 // cell_W + :aEditCellAdjust[3]
oBrw:aEditCellAdjust[4] -= 8 // cell_H + :aEditCellAdjust[4]


Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 180
Зарегистрирован: 12.07.06
ссылка на сообщение  Отправлено: 19.04.24 12:45. Заголовок: С высотой ячеек и н..


С высотой ячеек и не только я игрался целый день, ничего не помогает.
Править метод Edit() нет ни желания ни возможности, много работы.
Печалька.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 4551
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 19.04.24 13:00. Заголовок: alex_II пишет Там. г..


alex_II пишет
 цитата:
Там. где была корректировка, сетка нарушается


oBrw:DrawSelect(), oBrw:Refresh() перерисовывают строку курсора и все окно, не понимаю проблему совсем
Не нравится oBrw:aEditCellAdjust, положите на ячейку[и] modal окно в размеры или больше со своим вводом

 цитата:
Править метод Edit() нет ни желания ни возможности, много работы


Метод Edit править нет нужды, даже мыслей на это нет, а сделать свой ввод (можно даже красивый) один раз и использовать везде ЭТО и есть работа над проектом (hmg это продукт как есть и использование его вами это ваш риск ...)

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 1967
Зарегистрирован: 20.02.11
ссылка на сообщение  Отправлено: 19.04.24 15:28. Заголовок: alex_II пишет: Прав..


alex_II пишет:

 цитата:
Править метод Edit() нет ни желания ни возможности, много работы.
Печалька.


Там править ничего не надо, нужно просто подменить. У себя , когда лень менять исходники делаю замену
Скрытый текст


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 4553
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 19.04.24 15:48. Заголовок: Haz пишет У себя , ..


Haz пишет
 цитата:
У себя , когда лень менять исходники делаю замену


А мне всегда лень это делать, обхожусь вариантом modal окон как в примере Tsb_addrecord_3 ф-я
STATIC FUNCTION Add_Rec( oBrw )
только для всех вариантов ведения (Add, Add+Copy, Del, Edit) и окно может быть как для одной Cell так и нескольких, а GETBOX-ы иметь встроенные кнопки для ACTION и ACTION2

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 1968
Зарегистрирован: 20.02.11
ссылка на сообщение  Отправлено: 19.04.24 15:56. Заголовок: SergKis пишет: А мн..


SergKis пишет:

 цитата:
А мне всегда лень это делать, обхожусь вариантом modal окон как в примере Tsb_addrecord_3 ф-я
STATIC FUNCTION Add_Rec( oBrw )
только для всех вариантов ведения (Add, Add+Copy, Del, Edit) и окно может быть как для одной Cell так и нескольких, а GETBOX-ы иметь встроенные кнопки для ACTION и ACTION2


Сергей , привет.
Согласен, с твоей подачи тоже использую MODAL, подмены метода использую для быстрого моделирования. ну чтоб не совсем стыдно было черновик показывать Потом можно бесконечно наводить красоту.

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 181 , стр: 1 2 3 4 5 6 7 8 9 10 All [только новые]
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 9
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет