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

Вниз

Пример ComboBox в ячейке DBGrid вместо значения.   Найти похожие ветки 

 
Delph   (2002-11-11 16:18) [0]

Не подскажете исходник? Спасибо.


 
Delph   (2002-11-11 16:29) [1]

Пардон, CheckBox!


 
down   (2002-11-11 16:50) [2]

Нужно обрабатывать OnDrawCell, для рисования Checkbox использовать DrawFrameControl.


 
Aristarh   (2002-11-11 17:36) [3]

Используй ehDBGrid из библиотеки EhLIB. Классная вещь, и для снг бесплатная.


 
Abu   (2002-11-11 19:01) [4]

Для StringGrid-a:

Как показывать нестандартный встроенный редактор (inplace editor) в ячейке stringgrid (например combobox).

procedure TForm1.FormCreate(Sender: TObject);
begin
{Высоту combobox"а не изменишь, так что вместо combobox"а
будем изменять высоту строки grid"а !}
StringGrid1.DefaultRowHeight := ComboBox1.Height;
{Спрятать combobox}
ComboBox1.Visible := False;
ComboBox1.Items.Add("Delphi Kingdom");
ComboBox1.Items.Add("Королевство Дельфи");
end;

procedure TForm1.ComboBox1Change(Sender: TObject);
begin
{Перебросим выбранное в значение из ComboBox в grid}
StringGrid1.Cells[StringGrid1.Col,
StringGrid1.Row] :=ComboBox1.Items[ComboBox1.ItemIndex];
ComboBox1.Visible := False;
StringGrid1.SetFocus;
end;

procedure TForm1.ComboBox1Exit(Sender: TObject);
begin
{Перебросим выбранное в значение из ComboBox в grid}
StringGrid1.Cells[StringGrid1.Col,
StringGrid1.Row] :=ComboBox1.Items[ComboBox1.ItemIndex];
ComboBox1.Visible := False;
StringGrid1.SetFocus;
end;

procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol,
ARow: Integer; var CanSelect: Boolean);
var
R: TRect;
begin
if ((ACol = 3) AND (ARow <> 0)) then
begin
{Ширина и положение ComboBox должно соответствовать
ячейке StringGrid}
R := StringGrid1.CellRect(ACol, ARow);
R.Left := R.Left + StringGrid1.Left;
R.Right := R.Right + StringGrid1.Left;
R.Top := R.Top + StringGrid1.Top;
R.Bottom := R.Bottom + StringGrid1.Top;
ComboBox1.Left := R.Left + 1;
ComboBox1.Top := R.Top + 1;
ComboBox1.Width := (R.Right + 1) - R.Left;
ComboBox1.Height := (R.Bottom + 1) - R.Top;
{Покажем combobox}
ComboBox1.Visible := True;
ComboBox1.SetFocus;
end;
CanSelect := True;
end;



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

Форум: "Основная";
Текущий архив: 2002.11.21;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.009 c
14-69556
Slavan
2002-11-01 16:56
2002.11.21
Конвертация строки в время


6-69460
Olphi
2002-09-24 19:38
2002.11.21
Как узнать, к какому провайдеру сейчас подключен комп?


6-69483
TCrash
2002-09-25 15:33
2002.11.21
Спецификация POP3


3-69165
Sergei Ivanov
2002-10-31 14:21
2002.11.21
Арифметические операции с датами в Interbase


1-69249
TankMan
2002-11-09 16:05
2002.11.21
Насчет Таймера....





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский