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




Пост N: 178
Зарегистрирован: 27.07.08
ссылка на сообщение  Отправлено: 15.11.11 03:06. Заголовок: TSBROWSE - "цепляется" последняя строка


Обьясните пожалуйста, почему при прокрутке TSBROWSE последняя строка часто не обновляется, а зависает, и её значение остаётся неизменным при прокрутке. В зависимости от установленного числа пикселей высоты, эта строка может быть в половину и в четверть нормальной высоты.

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 69 , стр: 1 2 3 4 All [только новые]


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




Пост N: 748
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 12.07.15 13:49. Заголовок: Андрей, это понятно,..


Андрей, это понятно, мы боремся с фантомной (заполненной) строкой. В твоем мод. примере она тоже просматривается, если бы она (фантомная строка) была пуста - это, по мне, было бы нормой. Получается тбровсе говорит (у меня) о 26 строках, а прорисовывает 27 и листает из расчета 27

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




Пост N: 606
Зарегистрирован: 20.02.11
ссылка на сообщение  Отправлено: 12.07.15 14:50. Заголовок: SergKis пишет: мы б..


SergKis пишет:

 цитата:
мы боремся с фантомной (заполненной) строкой


Сергей , мне кажется этот фантом - результат разбалансировки высот заданных при инициализации и высот получаемых при первой пририсовке
Высоты шапки подвала и строк корректируются при END TSBROSE вызовом SetHeights( Self ) и число строк расчитывается из этих условий скорее всего и формируется значение nRowCount() при первой прорисовке бровса,
Затем назначая заголовки футинги и хидеры , или прямо меняя высоту строки через :nHeighCell := вызова SetHeights( Self ) не производится
В этом и есть моя догадка ( не проверял ), а при вызове ::Display() или ::Paint() - опять вызов SetHeights( Self ) и все встает в норму.

PS позже поковыряю, пока не могу, на работе плотно буду занят



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




Пост N: 750
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 12.07.15 15:08. Заголовок: Haz пишет:В этом и е..


Haz пишет:
 цитата:
В этом и есть моя догадка ( не проверял ), а при вызове ::Display() или ::Paint()


в самую точку
MAGAZIN.oBrw.Height -= 12 // nGetHole
oBrw:Paint() // Display()
решают проблему прорисовки (Refresh нет), а с листанием, может мой глюк, новый лист от nRowCount+1 в TsBrowse


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




Пост N: 5123
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 12.07.15 15:27. Заголовок: SergKis пишет: oBrw..


SergKis пишет:

 цитата:
oBrw:Paint() // Display()
решают проблему прорисовки (Refresh нет)


Да я про это ранее писал что решает ))
Хотелось понять "кто" рисует фантомную (заполненную) строку.

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




Пост N: 755
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 12.07.15 15:40. Заголовок: Dima пишет:Да я про ..


Dima пишет:
 цитата:
Да я про это ранее писал что решает ))


В моем примере (не твой модифицированный) с реальным скролингом, фантомная строка есть, но она пустая, а тут HScroll есть, а скролинга нет происходит накладка и ты писал, когда я со своим возился, ну и сам понимаешь склероз догнал
Haz разложил по полочкам

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




Пост N: 5124
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 12.07.15 15:41. Заголовок: SergKis пишет: ну и..


SergKis пишет:

 цитата:
ну и сам понимаешь склероз догнал


аналогично + Остеохондроз

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




Пост N: 607
Зарегистрирован: 20.02.11
ссылка на сообщение  Отправлено: 12.07.15 15:44. Заголовок: Dima пишет: Да я пр..


Dima пишет:

 цитата:
Да я про это ранее писал что решает


На основе твоих записей догадка и появилась
Dima пишет:

 цитата:
Хотелось понять "кто"


Скорее всего это END TSBROWSE
Видимо пересчет высот надо делать после любого изменения высоты строк или значений заглловков и футингов.
Может потребуется все назначения делать через новые методы типа ::SetHeightCell () и пр. которые должны вызавать этот пересчет

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




Пост N: 5125
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 12.07.15 15:51. Заголовок: Haz Следующее покол..


Оффтоп:
Haz
Следующее поколение ("Клинского , Пепси и 1С") читая этот форум ни черта не поймет о чём мы это тут
трём


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




Пост N: 4379
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 12.07.15 22:40. Заголовок: Dima пишет: Следующ..


Dima пишет:

 цитата:
Следующее поколение ("Клинского , Пепси и 1С") читая этот форум ни черта не поймет о чём мы это тут
трём


Это поколение просто отрицает само существование всех xBase языков...
Им подавай только те языки , которые в топе всяких опросов и рекомендаций всяких центров...

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

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