powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Грид,колонка, Visible
31 сообщений из 31, показаны все 2 страниц
Грид,колонка, Visible
    #32242586
MS_Ripped
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Привет.

Проблема вкратце такова: Мною пишется клиент на VFP8 в связке с MSSQL. В клиенте разработана специальная форма для настройки внешнего вида грида (видимость колонок, подсветка,высота строк, шапки и т.д.). Т.е. я могу любой грид настроить через эту форму как мне хочется - спрятать/показать колонки и т.д. Все эти настройки гридов сохраняются соответственно на сервере и восстанавливаются при следующем запуске клиента.

Как работает форма настройки: В нее передается указатель грида (THIS) и через этот указатель в форму считывается все колонки грида, размер шапки, строк и индикатор подсветки строки. После того, как я закрываю форму настройки по кнопке OK, я через указатель на грид, прохожусь по его колонкам и применяю свойство Visible = .T. или .F. колонок в зависимости от того как я настроил эти колонки в форме. После того, как некоторые колонки скрыты, при пролистывании грида горизонтально почему-то возникают глюки, у активной записи - затираются у последних колонок названия, и все как бы смещается и возникает каша, словно явно чуствуется "нехватка" спрятанных колонок. Такое часто возникает, когда скрываются колонки в середине грида или в самом начале.

Никто не сталкивался с такой проблемой ?
...
Рейтинг: 0 / 0
Грид,колонка, Visible
    #32242593
иванС
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А удалить их...
REMOVEOBJECT-есть такой метод
...
Рейтинг: 0 / 0
Грид,колонка, Visible
    #32242602
Равиль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет всем :)
Я обычно VISIBLE колонки комбинирую с ENABLED и RESIZABLE.
...
Рейтинг: 0 / 0
Грид,колонка, Visible
    #32242604
MS_Ripped
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Можно конечно попробовать через AddColumn DeleteColumn, но тогда придется каждый раз переопределять ControlSource для колонок грида ?
...
Рейтинг: 0 / 0
Грид,колонка, Visible
    #32242609
MS_Ripped
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
>Привет всем :)
>Я обычно VISIBLE колонки комбинирую с ENABLED и RESIZABLE.

Равиль, Ваш вариант не сработал :(
...
Рейтинг: 0 / 0
Грид,колонка, Visible
    #32242614
Равиль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А в каком методе Вы все переопределяете ?
...
Рейтинг: 0 / 0
Грид,колонка, Visible
    #32242626
MS_Ripped
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Приведу код:

SCAN && идем по курсору, в котором сидят наименования колонок грида
WITH THISFORM.oGrd && Указатель на грид, для которого идет настройка
&& был передан в форму настройки из грида через
&& THIS грида

.Columns(RECNO()).ColumnOrder = ColOrder && Индикатор положения
&& колонки в гриде

IF ColHide = 1 && Индикатор показать/скрыть колонку
.Columns(RECNO()).Visible = .F.
ELSE
.Columns(RECNO()).Visible = .T.
ENDIF

.LockColumns = THISFORM.spnLEFTLOCK.Value
.RowHeight = THISFORM.spnROWHEIGHT.Value
.HeaderHeight = THISFORM.spnHDRHEIGHT.Value
IF THISFORM.chkHIGHLIGHT.Value = 0
.HighLightStyle = 0
ELSE
.HighLightStyle = 2
ENDIF

ENDWITH
ENDSCAN
...
Рейтинг: 0 / 0
Грид,колонка, Visible
    #32242648
Равиль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не знаю - Refresh грида в конце конечно напрашивается...
Я обычно подобный код пишу в Init грида и вызываю его при необходимости...
Может кто-то еще посоветует :)
...
Рейтинг: 0 / 0
Грид,колонка, Visible
    #32242658
Фотография Андрей Давыдов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это баг. См. на UT. Надеюсь в сп1 поправят.
...
Рейтинг: 0 / 0
Грид,колонка, Visible
    #32242664
MS_Ripped
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
>Это баг. См. на UT. Надеюсь в сп1 поправят.

На этом всем спасибо. Будем ждать сервис пак :)
...
Рейтинг: 0 / 0
Грид,колонка, Visible
    #32242702
Crip
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
После того, как некоторые колонки скрыты, при пролистывании грида горизонтально почему-то возникают глюки, у активной записи - затираются у последних колонок названия, и все как бы смещается и возникает каша, словно явно чуствуется "нехватка" спрятанных колонок.

Кстати , в гриде случайно не присутствуют объекты контейнеры?
В любом случае поступаешь так:
В методе Scrolled грида пишешь
This.Refresh()
...
Рейтинг: 0 / 0
Грид,колонка, Visible
    #32242724
MS_Ripped
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
>После того, как некоторые колонки скрыты, при пролистывании грида >горизонтально почему-то возникают глюки, у активной записи - затираются >у последних колонок названия, и все как бы смещается и возникает каша, >словно явно чуствуется "нехватка" спрятанных колонок.

>Кстати , в гриде случайно не присутствуют объекты контейнеры?
>В любом случае поступаешь так:
>В методе Scrolled грида пишешь
>This.Refresh()

В гриде таких объектов нет, и при добавлении вышеприведенного кода глюки пропали. Но мне не нравится как стал работать грид при скроллировании:
создается впечатление что скрытые колонки учитываются при скроллинге, что приводит к визуальному "дерганью" грида. Например, есть 10-ть колонок, 2я,3я скрыты, находимся на самой первой колонке (она видимая,слева), за ней видна сразу 4,5 и т.д. При скроллинге вправо - первая колонка уходит влево, за пределы видимости грида, а самой левой становится 4-я. При повторном скроллинге - 4-я колонка влево не уходит, а остается на месте (листается 2-я невидимая колонка). Повторный скроллинг приводит к такому же результату (листается 3-я невидимая колонка). И лишь затем скроллирование идет нормально.

А это не есть гут.
...
Рейтинг: 0 / 0
Грид,колонка, Visible
    #32242772
Фотография Андрей Давыдов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А вместо visible=.f.

column.width=0
column.Resizable=.f.
column.enabled=.f.

не проканает?
...
Рейтинг: 0 / 0
Грид,колонка, Visible
    #32242794
MS_Ripped
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
>А вместо visible=.f.

>column.width=0
>column.Resizable=.f.
>column.enabled=.f.

>не проканает?

Те же глюки остались.
Ладно, буду ждать сп или попытаюсь сделать с переопределением числа колонок у грида (при скрытии колонок) с последующим переопределением controlsource колонок.
...
Рейтинг: 0 / 0
Грид,колонка, Visible
    #32243067
Aijik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Описанный баг на UT немного по-другому проявлялся, но в принципе то же самое, т.к. там колонки конечные колонки хайдились, а не серединные, как у Вас. Там же предложены 2 обхода бага. Смысл обхода - это на assign-методе к Visible колонки (или на BINDEVENT событии во втором примере обхода) сделать Width колонки равным нулю, затем восстановить прежний и перерисовать скроллбары. Подробнее смотрите здесь: UT Visual FoxPro Bug List
Выберите Page2
Ошибка: Scroll bugs with Invisible columns in grid June 2, 2003 15:21 Walter Meester
...
Рейтинг: 0 / 0
Грид,колонка, Visible
    #32243088
MS_Ripped
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
>Описанный баг на UT немного по-другому проявлялся, но в принципе то же >самое, т.к. там колонки конечные колонки хайдились, а не серединные, как у >Вас. Там же предложены 2 обхода бага. Смысл обхода - это на assign-методе >к Visible колонки (или на BINDEVENT событии во втором примере обхода) >сделать Width колонки равным нулю, затем восстановить прежний и >перерисовать скроллбары. Подробнее смотрите здесь: UT Visual FoxPro Bug >List
>Выберите Page2
>Ошибка: Scroll bugs with Invisible columns in grid June 2, 2003 15:21 Walter >Meester

Спасибо, буду смотреть
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Грид,колонка, Visible
    #35036727
Каому-нибудь удалось побороть этот баг? А то половину вчерашнего дня ломал голову, что это такое с гридом моим, пока не наткнулся на этот топик сегодня.

P.S.
Раздражает, если честно это дерганье, т.к. колонок много и их приличное кол-во скрыто.
...
Рейтинг: 0 / 0
Грид,колонка, Visible
    #35036779
bodrox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А нельзя использовать другой грид? SGrid, например.
----------------
Новичок в VFOX
...
Рейтинг: 0 / 0
Грид,колонка, Visible
    #35036784
bodrox
А что такое SGrid????
...
Рейтинг: 0 / 0
Грид,колонка, Visible
    #35036840
Burn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Иван КрамерКаому-нибудь удалось побороть этот баг?
Двыа подхода - динамически создаваемый грид в котором учитываются только видимые колонки, остальные не создаются.
Или лишнее просто удаляются - метод GRID-а DeleteColumn() работает просто на ура
...
Рейтинг: 0 / 0
Грид,колонка, Visible
    #35036856
К сожалению, у меня слишком навороченный грид. Переопределены классы заголовка, колонки, все формируется автоматически, есть фильтрация, поиск, запоминание состояния грида между сеансами + ко всему возможность скрытия колонки по желанию пользователя и метод DeleteColumn() на первый взгляд внесет некую сумятицу.

Может есть какой еще способ?
Может какой SP решает данную проблему?
...
Рейтинг: 0 / 0
Грид,колонка, Visible
    #35036905
bodrox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Иван Крамер bodrox
А что такое SGrid????
Гм. Ну я так образно называю нестандартные гриды из программируемых классов :).
То есть, я к тому, что пробовали ли вы использовать любой другой класс, и повторялся ли на нём такой же глюк?
...
Рейтинг: 0 / 0
Грид,колонка, Visible
    #35037021
bodroxТо есть, я к тому, что пробовали ли вы использовать любой другой класс, и повторялся ли на нём такой же глюк?
Собственно у меня как раз нестандартный грид, глюк возник, когда колонок стало 16, на 8, когда тестировал такого не было.
...
Рейтинг: 0 / 0
Грид,колонка, Visible
    #35037034
Ну вот поставил 11 колонок, вроде все нормально, но до тех пор пока совокупная ширина всех столбцов меньше какого-то порога, делаю колонку шире и начинается эта канитель с прорисовкой 8(
...
Рейтинг: 0 / 0
Грид,колонка, Visible
    #35037056
Kruchinin Pahan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Иван КрамерНу вот поставил 11 колонок, вроде все нормально, но до тех пор пока совокупная ширина всех столбцов меньше какого-то порога, делаю колонку шире и начинается эта канитель с прорисовкой 8(
А самое забавное, что этот глюк по-разному проявляется в формах MDIForm = (.T./.F.)
...
Рейтинг: 0 / 0
Грид,колонка, Visible
    #35037082
bodrox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Отловить точные значения порога не получилось?
--------------
Новичок в VFOX
...
Рейтинг: 0 / 0
Грид,колонка, Visible
    #35037117
А зачем их ловить, пользователь же менять ширину колонок будет, я сторонник гибкого интерфейса, который каждый пользователь волен изменять по своему вкусу в определенных рамках конечна (на что сил у меня хватит 8) )
...
Рейтинг: 0 / 0
Грид,колонка, Visible
    #35037120
bodrox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Иван Крамер , для нахождения причины глюка.
...
Рейтинг: 0 / 0
Грид,колонка, Visible
    #35037139
Сложно представить, что мне как-то поможет порог найденный. Надо будет на стандартном гриду проверить в run-time скрыть колонки и посмотреть, что будет
...
Рейтинг: 0 / 0
Грид,колонка, Visible
    #35037179
На стандартном гриде тоже такая же фигня 8( Как только порог превышен катавасия с прорисовкой при скроллинге.
...
Рейтинг: 0 / 0
Грид,колонка, Visible
    #35118474
Alex45
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
VFP 9 sp2. При перемещении клавишами работает нормально.
Thisform.Grid1.Column2.Enabled = .F.
Thisform.Grid1.Column2.Width = 0
Thisform.Grid1.Column2.Visible = .F.
При прокрутке горизонтальным скролом есть задержка на невидимой колонке, но это всяко лучше, чем иметь кашу на экране.
...
Рейтинг: 0 / 0
31 сообщений из 31, показаны все 2 страниц
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Грид,колонка, Visible
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]