Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.02.06;
Скачать: [xml.tar.bz2];

Вниз

Убрать пустую строку в DBGrid   Найти похожие ветки 

 
AMogil   (2004-01-10 11:49) [0]

Здравствуйте, уважаемые.

Если DbGrid подключен к dataset"у, в котором отсутсвуют записи, то у него появляется пустая строка. Как от этого избавиться?


 
Desdechado   (2004-01-10 12:37) [1]

от грида, от пустой строки или от отсутствующих записей?


 
AMogil   (2004-01-10 13:04) [2]

От пустой строки в гриде... Естественно...


 
bobtubob   (2004-01-10 13:09) [3]

скорей всего включён режим добавления новых строк и напротив этой строки светится звёздочка - строки как таковой нет тебе предлагают ввести данные когда ты находишся ниже последней EOF -в пустой последней нет!
Вот и выходит что тебе предлагают ввести данные


 
AMogil   (2004-01-10 13:12) [4]

Я пониамаю, что мой вопрос звучит по чайниковски... но редктировать строку никто не предлагает. И светиться там не "звездочка" а, блин, "треугольничек", т.е. State=bsBrowse


 
AMogil   (2004-01-10 13:16) [5]

А вот если начать вводить новые данные, тогда и поялвяется "звездочка", но можно ведь и сказать ReadOnly:=True гриду... и вообще уважаемый bobtubob это все-таки не ответ.
Но все равно спасибо... за внимание :-)


 
bobtubob   (2004-01-10 13:28) [6]

ели ты стоиш на первой пустой светится треугольник
Спускаешся ниже - звёздочка на второй строке!
Если так тогда таблица имеет пустую строку - возьми удали руками!


 
AMogil   (2004-01-10 13:39) [7]

Нет. Нужно немного другое. Представь что есть пустая таблица. DbGrid: ReadOnly:=True. При открытии формы с таким гридом наблюдается пустая строка. Так вот, как ее убрать. Т.е. чтобы при показе такого грида, присоедененного к пустой таблице наблюдались ьолбко заголовки колонок.


 
Vemer   (2004-01-10 14:03) [8]

Просто отключай DataSource когда .recordCount = 0.


 
Anatoly Podgoretsky   (2004-01-10 14:09) [9]

Фокус то куда ставить в таком гриде? Заголовки фокуса не принимают. Ну если очень хочешь иметь такой грид, то тебе надо делать свою реализацию.


 
AMogil   (2004-01-10 15:13) [10]

А в пустом гриде фокус и не нужен. Вставка записей не производится непосредственно в гриде


 
AMogil   (2004-01-10 15:14) [11]

Vemer: но и в этом случае пустая строка в гриде остается.


 
Vemer   (2004-01-10 15:16) [12]

Сорри, перепутал, "треугольник" исчезает. Надо или Датасет закрывать, иди DataSourse от Датасета отсоединять.


 
Vemer   (2004-01-10 15:17) [13]

В догонку - тоже не поможет, если в DBGrid колонки созданы...


 
Desdechado   (2004-01-10 15:18) [14]

а чем она мешает?


 
AMogil   (2004-01-10 17:23) [15]

Desdechado: кривостью. Нелогично. Таблица пуста - а грид показывает что есть пустая строка. Нам то это понятно, го вот пользователю, который смутно себе представляет работы БД нет.


 
AMogil   (2004-01-10 17:23) [16]

Desdechado: кривостью. Нелогично. Таблица пуста - а грид показывает что есть пустая строка. Нам то это понятно, но вот пользователю, который смутно себе представляет работы БД нет.


 
WithOut Any ...   (2004-01-10 18:39) [17]

Предварительно проверь как предложил
Vemer © (10.01.04 14:03) [8]
Просто отключай DataSource когда .recordCount = 0.

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


 
sniknik   (2004-01-10 19:05) [18]

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


 
AMogil   (2004-01-11 00:47) [19]

WithOut Any: не работает так. Похоже действительно есть только два варианта:
1. Anatoly Podgoretsky
2. sniknik. Но вот при пустом гриде OnDrawDataCell и OnDrawColumnCell не срабатывают. Так что же весь грид самому перерисовывать?


 
kaif   (2004-01-11 00:54) [20]

А ты в опциях грида отключи при пустом наборе:
goVertLines, goHorLines, goIndicator и titl-ы тоже. Я думаю тогда в гриде вообще нифига не останется и будет всем счастье и кайф полный. А вообще я тебя понимаю. Меня тоже эта фишка всегда раздражала в гриде. Хрен отличишь одну пустую запись от ни одной вообще.


 
AMogil   (2004-01-11 09:38) [21]

kaif: Вообще идея хорошая, отключать все что ты сказал ставить к тому же Enabled:=False и отрисвывать самостоятельно заголовки колонок


 
Polevi   (2004-01-11 12:12) [22]

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


 
AMogil   (2004-01-11 13:14) [23]

Polevi
Как, если не секрет?


 
Polevi   (2004-01-11 14:13) [24]

procedure DrawCell(ACol, ARow: Longint; ARect: TRect; AState: TGridDrawState); override;
begin
...
...
if Datalink.RecordCount=0 then
RowHeights[FTitleOffset]:=-1
else
RowHeights[FTitleOffset]:=DefaultRowHeight;
...
...
end;



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

Форум: "Базы";
Текущий архив: 2004.02.06;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.037 c
11-16209
BaRToV
2003-05-19 01:33
2004.02.06
Applet.AttachProc(xxx)


6-16547
Makhanev A.S.
2003-12-01 19:06
2004.02.06
Посоветуйте, пожалуйста, методику передачи данных...


3-16148
Guz
2004-01-14 19:07
2004.02.06
Как в Дельфи сохранить результаты Query в dBase4 файл(*.dbf)??


1-16441
Денис Евлентьев
2004-01-28 10:11
2004.02.06
Проблема с отображением поля типа dtGraphic в отчете Rave Report


3-16158
Вованчик
2004-01-14 10:37
2004.02.06
SELECT





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский