Форум: "Базы";
Текущий архив: 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.036 c