Форум » GUI » Многострочный вывод в GRID » Ответить

Многострочный вывод в GRID

gustow: Можно ли (если возможно - не понял пока как) выводить в GRID'е длинные текстовые данные, не умещающиеся по ширине в колонку, в "многострочном" режиме (с "автопереносом")? Конечно, можно было б для этого и TSBROWSE использовать - но уж кусок написал с гридом, а тут выяснилось, что строки могут быть и в 2, и в 3 раза длиннее ширины колонки (да и прояснить вопрос заодно)

Ответов - 4

gfilatov2002: Алексей! Это невозможно в стандартном GRID'е, который основан на ListView. Единственный выход - использовать TBROWSE в таком случае

gustow: Спасибо за разъяснение, Григорий - что ж, ладно, хоть немного под TSBROWSE переписывать (не успел еще много понаписать).

gustow: Вернулся (через паузу :) ) к "многострочному - с автопереносом - броузингу" (чтобы длинное текстовое поле "автопереносилось" на новую подстроку в той же ячейке - если превышает ширину колонки - и видел его значение целиком). Слепил обычный, нормальный TBROWSE: [pre2] public baz:="TEST" use &(baz+".DBF") new alias &baz define tbrowse oBrw ; at 20, 10 ; of W_0 ; // "W_0" - имя main-окна width 500 ; height 300 ; alias baz ; headers "Код", "Наименование" ; widths 100, 400 ; fields &( baz + "->CODE" ), &( baz + "->NAIM" ) ; /* celled */ end tbrowse[/pre2] ...и никакой авто-многострочности вывода поля NAIM (C, 250) не наблюдаю... (вижу во 2-й колонке, как и в обычном BROWSE/GRID, сколько-то из начала наименования - а остальное скрыто за правой границей броуза). Что делаю не так? (где-то какой-то "wrap" воткнуть в "on" или в ".T."? где и какой?)


gfilatov2002: gustow пишет: никакой авто-многострочности вывода поля NAIM (C, 250) не наблюдаю А никто и не обещал авто-многострочности Но можно сделать так: ... ADD COLUMN TO Brw_4 ; HEADER "Address" ; SIZE 270 PIXELS ; 3DLOOK TRUE ; ALIGN DT_LEFT, nMakeLong( DT_CENTER, 3 ) ; // bitmap aligned to the left of centered text DATA { || Brw_4:Proper( Employee->Street ) + CRLF + ; Trim( Employee->Zip ) + Space( 1 ) + ; Brw_4:Proper( Trim( Employee->City ) ) + ", " + ; Employee->State } ; // multi-line feature on cells COLORS CLR_BLACK,CLR_PINK ...



полная версия страницы