Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.23;
Скачать: CL | DM;

Вниз

Скрытие столбцов в DBGrid   Найти похожие ветки 

 
_ALEXey_   (2004-05-07 08:11) [0]

Доброе утро, мастера и не только! Я столкнулся с такой проблемой. При выполнении SQL-запроса в ДБГрид выводятся значения двух полей. Первое поле нужно выбирать, но скрывать от пользователя (DBGrid.Columns[0].Visible:= False). Вот тут и загвоздка: при таком подходе возникают проблемы со скороллом грида (мышкой - ползунок передвигается, а значения в гриде не обновляются или обновляются неизвестно как; клавишами - вообще не прокручивается); также имеется эффект мультиселекта строк грида. Причем при выборе более двух полей или НЕскрытии первого, все становится нормально. Не подскажете, как это решается?!


 
ORMADA ©   (2004-05-07 08:43) [1]

вопрос зачем те ваще выводить не нужное поле в дбгрид ?


 
_ALEXey_   (2004-05-07 08:55) [2]

Я не говорил, что оно мне не нужно! Его не должен видеть пользователь, а мне оно нужно для упрощения удаления, обновления записи, добавления его значения (первичного ключа - того самого "ненужного") в качестве значения внешнего при добавлении записи в другую таблицу.


 
ORMADA ©   (2004-05-07 08:58) [3]

Ты не понял СУТИ! Зачем тебюе его в ДБГРИД отображать ?!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Онор есть у тебя в наборе данных ака датасет! Нах оно в гриде то если ты его даёшь там редактировать ????!
Ты хоть понимаешь предназначение ДБГРИДА или как ??? :))))


 
_ALEXey_   (2004-05-07 09:06) [4]

Забыл добавить: в Гриде столбцы не определены, запрос создается динамически, и столбцы Грида соответствуют выбираемым полям из SQL-запроса. В запросе есть ЭТО поле => в гриде тоже.


 
ORMADA ©   (2004-05-07 09:10) [5]

Дык добавляй СТОЛБЦЫ гриду динамически и задавай им нужные для обработки поля датасета


 
ORMADA ©   (2004-05-07 09:12) [6]

А ещё лучше юзай EhLib там понтов больше :) и глюков меньше хотя именно такого глюка ка кты описываешь ни разу не замечал хош кидай пример на мыло только если он небольшой может помогу чем


 
_ALEXey_   (2004-05-07 09:33) [7]

То есть: разорвать связь между DBGrid и IBQuery, выполнить запрос и затем все поля кроме 0-го создать в гриде?
Надо попробовать. Благодарю ORMADA!
Правда теперь возникает новая задача: при перемещении по гриду перемещать указатель текущей записи датасета.


 
Term ©   (2004-05-07 10:02) [8]

чтото у тебя такие траблы какие не разу не встречал, да и решаеш ты их странно...
> разорвать связь между DBGrid и IBQuery, выполнить запрос
> и затем все поля кроме 0-го создать в гриде

зачем разрывать??? ЗАЧЕМ просто определи столбцы динамически и всё


 
TransparentGhost   (2004-05-07 10:30) [9]

Zachem stolbci poreopredeljat"? Ih vaashe luchshe ne trogat" i ne ispol"zovat". Ja kak-to proboval cherez eti stolbci rabotat" - kak raz i bili podobnije trabli. Poprobuj FetchAll. Paru dnej nazad u menja bili problemi so scrollom - FetchAll pomog.


 
Плохиш   (2004-05-07 10:39) [10]

>_ALEXey_

TField.Visible спасёт отца русской демократии.


 
Jee ©   (2004-05-07 10:40) [11]

Если у тебя список полей динамический, но при этом первое всегда не должно быть видно, можно отключить ему Visible в датасете, тогда и в гриде его не будет видно.
Отключай в AfterOpen.
Dataset.Fields[0].Visible := false;


 
z0ne   (2004-05-07 11:01) [12]

а что DBGrid.Columns.Delete(0) не устраивает ???


 
_ALEXey_   (2004-05-07 11:07) [13]

В самом деле, когда сам создаешь столбцы, проблема исчезает.


 
_ALEXey_   (2004-05-07 11:15) [14]

Все спасибо! Проблема решена!



Страницы: 1 вся ветка

Текущий архив: 2004.05.23;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.031 c
8-1078996212
sergn
2004-03-11 12:10
2004.05.23
Растровый алгоритм эллипса


1-1084286649
glGLU
2004-05-11 18:44
2004.05.23
PopupMenu


4-1080663058
Дмитрий
2004-03-30 20:10
2004.05.23
Как при помощи WinAPI заморозить значение в памяти игры?


3-1082921265
Forget
2004-04-25 23:27
2004.05.23
объединение таблиц c помощью Tquery


3-1082983559
Sirruf
2004-04-26 16:45
2004.05.23
Кэшированные изменения в Interbase Express