Форум: "Базы";
Текущий архив: 2002.06.10;
Скачать: [xml.tar.bz2];
ВнизDBGrid&CheckBox Найти похожие ветки
← →
sanilo (2002-04-24 10:28) [0]Привет всем!
Вот такой вопросик:
а не встречал ли кто-нибудь где-нибудь DBGrid с
возможностью в поле "ставить галочку"
;)
Заранее спасибо!
← →
Praco (2002-04-24 10:33) [1]DBGridEh
← →
sanilo (2002-04-24 10:44) [2]А откуда он берется этот самый DBGridEh?
Если не сложно, подскажи где можно взять;))))
← →
Sergey13 (2002-04-24 10:54) [3]http://www.farpost.com/personal/dmitryb
← →
Johnny Smith (2002-04-24 11:02) [4]Ну, если будет не лень самому, то можно воспользоваться такой феней, как 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" производится не на гриде, а в датасете.
← →
DenNNis (2002-04-24 11:07) [5]лучше использовать Express Quantum Grid - очень мощная чтука, там можно и чекбоксы ставить и еще кучу всяких прелестей.
← →
Леонид (2002-04-24 11:29) [6]А существует ли в природе русский Help по EhLib ?
← →
koks (2002-04-24 11:47) [7]2 DenNNis - а где его взять.. то этот Quantum Grid... Он же кучу бабок стоит
← →
Johnny Smith (2002-04-24 11:49) [8]2koks Да валяется он кое-где на левых дисках...
← →
Praco (2002-04-24 11:49) [9]Только что нашел Quantum Grid, говорят бесплатный. Качаю. :))
http://rus.newmail.ru/comps.htm
← →
DenNNis (2002-04-24 12:46) [10]у меня есть тож с левого диска, но работает чудесно и давно, правда весит 8 мег :)
← →
дядька Рус (2002-04-25 19:52) [11]2Praco ->Да там не только Quantum Grid бесплатный :)))))
← →
Praco (2002-04-26 09:17) [12]> дядька Рус (25.04.02 19:52)
Спасибо, дядя, а я не только Grid качнул :))
← →
asafr (2002-04-26 10:49) [13]http://www.delphikingdom.com/helloworld/dbgridcolor.htm
← →
Victor1 (2002-05-18 18:47) [14]А для C++ Builder кто-нибудь знает где лежит бесплатный Quantum Grid?
← →
Slym (2002-05-20 07:58) [15]Статья "Разноцветный ДБ Грид"
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.06.10;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.01 c