Öncelikle formun create'inde
Kod: Tümünü seç
procedure TForm1.FormCreate(Sender: TObject);
begin
SetupGridPickList('mfadi', 'SELECT distinct mfadi FROM data');
end;
Kod: Tümünü seç
type
TForm1 = class(TForm)
procedure SetupGridPickList(
const FieldName : string;
const sql : string);
Kod: Tümünü seç
procedure TForm1.SetupGridPickList(const FieldName, sql: string);
var
slPickList:TStringList;
Query : TADOQuery;
i : integer;
begin
slPickList:=TStringList.Create;
Query := TADOQuery.Create(self);
try
Query.Connection := ADOConnection1;
Query.SQL.Text := sql;
Query.Open;
//Fill the string list
while not Query.EOF do
begin
slPickList.Add(Query.Fields[0].AsString);
Query.Next;
end; //while
for i:=0 to DBGrid1.Columns.Count-1 do
if DBGrid1.Columns[i].FieldName = FieldName then
begin
DBGrid1.Columns[i].PickList:=slPickList;
Break;
end;
finally
slPickList.Free;
Query.Free;
end;
end;
Kod: Tümünü seç
procedure TForm1.DBGrid1CellClick(Column: TColumn);
begin
if Column.PickList.Count > 0 then
begin
keybd_event(VK_F2,0,0,0);
keybd_event(VK_F2,0,KEYEVENTF_KEYUP,0);
keybd_event(VK_MENU,0,0,0);
keybd_event(VK_DOWN,0,0,0);
keybd_event(VK_DOWN,0,KEYEVENTF_KEYUP,0);
keybd_event(VK_MENU,0,KEYEVENTF_KEYUP,0);
end;
end;