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

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

DBGrid&CheckBox [D5, MSSQL]


sanilo ©   (2002-04-24 10:28:00) 

Привет всем!
Вот такой вопросик:
а не встречал ли кто-нибудь где-нибудь DBGridс
возможностью в поле "ставить галочку"
;)
Заранее спасибо!


Slym   (2002-05-20 07:58:00) [1]

Статья "Разноцветный ДБ Грид"


Victor1   (2002-05-18 18:47:00) [2]

А для C++ Builder кто-нибудь знает где лежит бесплатный Quantum Grid?


asafr   (2002-04-26 10:49:00) [3]

http://www.delphikingdom.com/helloworld/dbgridcolor.htm


Praco   (2002-04-26 09:17:00) [4]

> дядька Рус (25.04.02 19:52)
Спасибо, дядя, а я не только Grid качнул :))


дядька Рус   (2002-04-25 19:52:00) [5]

2Praco ->Да там не только Quantum Grid бесплатный :)))))


DenNNis   (2002-04-24 12:46:00) [6]

у меня есть тож с левого диска, но работает чудесно и давно, правда весит 8 мег :)


Johnny Smith   (2002-04-24 11:49:00) [7]

2koks Да валяется он кое-где на левых дисках...


Praco   (2002-04-24 11:49:00) [8]

Только что нашел Quantum Grid, говорят бесплатный. Качаю. :))
http://rus.newmail.ru/comps.htm


koks   (2002-04-24 11:47:00) [9]

2 DenNNis - а где его взять.. то этот Quantum Grid... Он же кучу бабок стоит


Леонид   (2002-04-24 11:29:00) [10]

А существует ли в природе русский Help по EhLib ?


DenNNis   (2002-04-24 11:07:00) [11]

лучше использовать Express Quantum Grid - очень мощная чтука, там можно и чекбоксы ставить и еще кучу всяких прелестей.


Johnny Smith   (2002-04-24 11:02:00) [12]

Ну, если будет не лень самому, то можно воспользоваться такой феней, как DrawFrameControl. Она позволяет прописывать контролы в указанный участок канвы.
Пример (правда, касается TStringGrid"а):
...
На событие OnDrawCell вешаем процедуру:

procedure TDifListForm.Grid1DrawCell(Sender: TObject; ACol,
ARow: Integer; Rect: TRect; State: TGridDrawState);
var
dc:HDC;
s:string;
begin
dc:=Grid1.Canvas.Handle;

if (ACol=3) and (ARow>0)
then
with Grid1.Canvas do
begin
FillRect( Rect );
{если в ячейке стоит "Y", то рисуем чекбокс с галочкой
если нет - пустой чекбокс}
if Grid1.Cells[ACol,ARow]="Y" then
DrawFrameControl(dc,Rect, DFC_BUTTON , DFCS_CHECKED)
else
DrawFrameControl(dc,Rect ,DFC_BUTTON , DFCS_BUTTONCHECK)
end;
end;
...
А теперь при щелчке мышкой по ячейке или нажатии <Пробела> пишем в ячейку "Y" или "N":

procedure TDifListForm.DiffGridMouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
with Grid1 do
if (Col=3) and (Row>0) then
begin
if Cells[Col,Row]="" then
Cells[Col,Row]:="Y"
else
Cells[Col,Row]:="N"
end;
end;
...
+ такой же обработчик на нажатие пробела.

Для DBGrid"а пишется то же самое, но отрисовка идет на событие OnDrawDataCell и смена "Y" на "N" производится не на гриде, а в датасете.


Sergey13   (2002-04-24 10:54:00) [13]

http://www.farpost.com/personal/dmitryb


sanilo   (2002-04-24 10:44:00) [14]

А откуда он берется этот самый DBGridEh?
Если не сложно, подскажи где можно взять;))))


Praco   (2002-04-24 10:33:00) [15]

DBGridEh


Наверх

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