Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как скрыть колонку в DBGrid ? [D2005, XP]


Страницы:   1 2 3

<Evil> ©   (2008-09-29 18:48:00) 

Если я в конструкторе на колонке указываю
visible := false
то когда проэкт откомпилится то эта же колонка становится видимой...
также само обстоит дело и з изменениям розмеров колонок, меняются только в конструкторе....
можно канешно зделать в конструкторе формы
 DBGrid.Columns[0].Visible := false;
 DBGrid.Columns[1].Width := 80;
 DBGrid.Columns[2].Width := 160;

Но как бы это не особо визуально...


Anatoly Podgoretsky   (2008-09-30 14:12:00) [1]

> sniknik  (30.09.2008 12:34:44)  [44]

>> Я могу взяться, хза 50000 бакинских, отбить мозги до такой степени.
> не надо, я уже понял, как это работает (еще в [29]), теперь могу и сам потихоньку...

Думаешь я тебе поверю, что ты сам сделаешь, что можешь не сомневаюсь. Ну чего жмешься то? Я же не так много и прошу.


Anatoly Podgoretsky   (2008-09-30 14:10:00) [2]

> Сергей М.  (30.09.2008 12:06:40)  [40]

Затем, что кроме размера есть и другие характеристики, например положение, может быть пользовательские названия и т.д. поэтому иногда дешевле прибить и создать нужные по информации из реестра.


sniknik   (2008-09-30 13:16:00) [3]

> в *.dfm файл нечего не сохранялось(как выяснилось позже)
IDE непосредственно к программе никак не относится...


sniknik   (2008-09-30 13:14:00) [4]

> ранее бы сюда кто-то ткнул носом :)
sniknik ©   (30.09.08 00:54) [10]
> все делается в IDE, в десигне, "мастером" создаешьколонки, там же устанавливаешь желаемые параметры... все, никуда они не денутся, с подводной лодки. если не пересоздавать.

я тебе не понимай, ты мене не понимай... и вместо того чтобы объяснить, что ты реально делаешь, ты четыре раза повторял "не работает", и никакой полезной инфы.
реально начало что-то "обсуждаться" только с описания в Сергей М. ©   (30.09.08 11:07) [27]
хотя он и внес свои коррективы. сделал бы все сам как написано (либо в точности что писал я), недоразумений было бы меньше.
но это был первый пост с чем-то конкретным. что можно понять.


<Evil>   (2008-09-30 12:46:00) [5]


> если они есть, то не надо. но если их нет... а в гриде ты
> их не создавал (описание) значит их нет. удобства от IDE
> с пред просмотром, в IDE же и останутся... а желание было
> настроить в программе.

ранее бы сюда кто-то ткнул носом :)

В гриде я их не создавал, они появились автоматиски при установке параметров Connected и Active равным true, и да это только оказалось
только пред просмотром, в *.dfm файл нечего не сохранялось(как выяснилось позже)


sniknik   (2008-09-30 12:44:00) [6]

<Evil>   (30.09.08 11:53) [37]
> при этом в DBGrid отобразилисьвсе заполненые поля(колонки),
понимаешь, же. не создались а отобразились.

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


sniknik   (2008-09-30 12:39:00) [7]

> За каким лешим их прибивать-то ? Чем они тебе, уже существующие, помешали ?
если они есть, то не надо. но если их нет... а в гриде ты их не создавал(описание) значит их нет. удобства от IDE с пред просмотром, в IDE же и останутся... а желание было настроить в программе.


sniknik   (2008-09-30 12:34:00) [8]

> А мышью я что, спрашивается, делаю ? Как раз параметр width и меняю)
а после изменений, мышью, "выключи" датасет. размер остался, или колонки в общем?
а открытие повесть на кнопку, в рантайме ее нажмёшь. откуда взялись колонки?

вам меня уже не обмануть. я понял как и что вы делаете!

> Я могу взяться, хза 50000 бакинских, отбить мозги до такой степени.
не надо, я уже понял, как это работает (еще в [29]), теперь могу и сам потихоньку...

> Всем спасибо за внимания...
> Вопрос решен.
и даже не скажешь как?


&lt;Evil&gt;   (2008-09-30 12:15:00) [9]

Всем спасибо за внимания...
Вопрос решен.


&lt;Evil&gt;   (2008-09-30 12:12:00) [10]

Хотелось


&lt;Evil&gt;   (2008-09-30 12:11:00) [11]


> Сергей М. ©   (30.09.08 12:06) [40]
> > решенния прибить все автоматически созданые колонки, и
> пересоздать > их вручнуюЗа каким лешим их прибивать-то ?
>  Чем они тебе, уже существующие, помешали ? В любом месте
> своего кода где-либо перед визуализацией грида установи
> ширины колонок нужным образом, а для скрытия/показа нужных
> колонок установи соотв.образом св-во Visible соответствующих
> полей в коллекции активного дейтасета, из которого грид
> через дейтасурс берет данные для визуализации.


Это зделать не вопрос, мне в Десинг-Тайме натсроить все размеры...


Сергей М.   (2008-09-30 12:06:00) [12]


> решенния прибить все автоматически созданые колонки, и пересоздать
> их вручную


За каким лешим их прибивать-то ? Чем они тебе, уже существующие, помешали ?
В любом месте своего кода где-либо передвизуализацией грида установи ширины колонок нужным образом, а для скрытия/показа нужных колонок установи соотв.образом св-во Visible соответствующих полей в коллекции активного дейтасета, из которого грид через дейтасурс берет данные для визуализации.


Плохиш   (2008-09-30 12:04:00) [13]


> Anatoly Podgoretsky ©   (30.09.08 11:54) [38]

Не, сейчас я только долгами поделиться могу.


Anatoly Podgoretsky   (2008-09-30 11:54:00) [14]

> Плохиш  (30.09.2008 11:24:31)  [31]

Ты тоже хочешь научиться? Тогда выкладывай 50 000 бакинских.


&lt;Evil&gt;   (2008-09-30 11:53:00) [15]

А решенния нашлось...

Когда я связывал DBGrid с ADOQuery то установил параметр Connected для
ADOConnection равным true также для ADOQuery параметр Active тоже
равным true, при этом в DBGrid отобразились все заполненые поля(колонки),
при каком-то изменении параметров(в Десинг-Тайме):
width или visible после компиляции все измениия теряются.

решенния прибить все автоматически созданые колонки, и пересоздать их вручную


Anatoly Podgoretsky   (2008-09-30 11:52:00) [16]

> sniknik  (30.09.2008 11:01:25)  [25]

Я могу взяться, хза 50000 бакинских, отбить мозги до такой степени.


Anatoly Podgoretsky   (2008-09-30 11:50:00) [17]

> sniknik  (30.09.2008 8:52:20)  [20]

Очень трудно, если человек научился делать 80, то 1500 у него никогда не получится.


Vlad Oshin   (2008-09-30 11:47:00) [18]

И меня все запоминается :)

пробегись по grid.columns[I].width, запомни в массив, после любого query пробегись по массиву заполни наоборот, раз такие проблемы..


Сергей М.   (2008-09-30 11:43:00) [19]


> Плохиш ©   (30.09.08 11:24) [31]


За БДС2006 ничего не скажу - я иллюстрировал ситуацию для Д7.


> sniknik ©   (30.09.08 11:23) [29]


> нет создания колонок в гриде. а без этого НЕВОЗМОЖНО задать
> им параметры


А мышью я что, спрашивается, делаю ? Как раз параметр width и меняю)

Теперь пробуй поелозить мышью над тем же самым сплиттером не влево с целью усечения, а вправо, так чтобы изменить дифолтное значение ширины колонки в сторону увеличения.

Сохраняем, собираем, запускаем - что видим ? Видим что визуальная ширина колонки в RT в точности соответствует ширине той же колонки в DT !

Вопрос на засыпку - откуда в RT взялось ожидаемое увеличенное значение ширины колонки, если колонки в гриде я в DT явно не создавал ?


Anatoly Podgoretsky   (2008-09-30 11:37:00) [20]


> <Evil>   (29.09.08 23:34) [9]

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


Страницы:   1 2 3

Наверх

Титульная страница Поиск, карта сайта Написать письмо