![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Определение нажатия кнопки [D7, XP]
lewka-serdceed © (2008-06-18 11:32:00)Подскажите в чем здесь ошибка.
procedure TForm1.StringGrid2SelectCell(Sender: TObject; ACol,
ARow: Integer; var CanSelect: Boolean);
begin
Label4.Caption:=StringGrid2.Cells[1,Arow];
if PopupMenu1.Items[0].Click=true then Label3.Caption:='Ура';
end;
zorik (2008-06-18 12:46:00) [1]TStringGrid для этих целей как на меня не очень. Используй TListView или ищи сторонние визуальные компоненты. Можешь взять TCheckListBox и там "птички" ставить
lewka-serdceed (2008-06-18 12:43:00) [2]А можно выделить одновременно несколько строк в StringGride? И как?
zorik (2008-06-18 12:32:00) [3]StringGrid2.Cells[ACol,0]+StringGrid2.Cells[1,Arow]
ИМХО здесь что-то не так. Ты берешь Выделенный столбец, строчку 0 и выделенную строчку столбец 1. Т.е., если у тебя выделена ячейка [3, 5], то ты возмешь значения из ячейки [3, 0] + [1, 5]. Подумай и исправь
korneley (2008-06-18 12:29:00) [4]
> lewka-serdceed (18.06.08 12:20) [17]
> А почему не выполняется здесь условие
А какое, интересно, условие не выполняется? Очень даже выполняется. Как написано, так и работает.
zorik (2008-06-18 12:26:00) [5]procedure TForm1.N1Click(Sender: TObject);
begin
ShellExecute(Handle, nil, PChar(StringGrid2.Cells[StringGrid2.Col, 0] + StringGrid2.Cells[1, StringGrid2.Row]), nil, nil, SW_SHOW);
end;
Ega23 (2008-06-18 12:23:00) [6]Потому что оно не Checked.
zorik (2008-06-18 12:23:00) [7]
> а как мне тогда перенести в procedure TForm1.N1Click(Sender:
> TObject); координаты ячейки?
StringGrid2.Row и StringGrid2.Col
lewka-serdceed (2008-06-18 12:20:00) [8]А почему не выполняется здесь условие
procedure TForm1.StringGrid2SelectCell(Sender: TObject; ACol,
ARow: Integer; var CanSelect: Boolean);
begin
if PopupMenu1.Items[0].Checked then
ShellExecute(Handle,nil,PChar(StringGrid2.Cells[ACol,0]+StringGrid2.Cells[1,Arow]), nil,nil,SW_SHOW);
end;
korneley (2008-06-18 12:16:00) [9]
> Правильный-Вася (18.06.08 12:13) [15]
> > Unit 'FileCtrl' is specific to a platformв приведенном
> коде ее быть не может
В генетическом может :)
Правильный-Вася (2008-06-18 12:13:00) [10]
> Unit 'FileCtrl' is specific to a platform
в приведенном коде ее быть не может
Palladin (2008-06-18 12:10:00) [11]это не ошибка
lewka-serdceed (2008-06-18 12:07:00) [12]
> я спрашивал "какая" ошибка, а не "где"
Unit 'FileCtrl' is specific to a platform
Правильный-Вася (2008-06-18 12:00:00) [13]
> вот в этой строке
я спрашивал "какая" ошибка, а не "где"
korneley (2008-06-18 11:53:00) [14]
> а как мне тогда перенести в procedure TForm1.N1Click(Sender:
> TObject); координаты ячейки?
Вероятно,Form1.StringGrid2.RowиForm1.StringGrid2.Col
korneley (2008-06-18 11:49:00) [15]В попапменю нет кнопок, там
TMenuItem, у которых естьproperty OnClick: TNotifyEvent;Вот их-то (события) и надо определить, можно даже одно на всех навесить, и там поSenderразбираться кто его (событие) вызвал, и делать в связи с этим разные штуки.
Ega23 (2008-06-18 11:45:00) [16]
> Checked?
Это не совсем то...
lewka-serdceed (2008-06-18 11:45:00) [17]а как мне тогда перенести в
procedure TForm1.N1Click(Sender: TObject);координаты ячейки?
zorik (2008-06-18 11:44:00) [18]1. В ObjectInspector задаешь:
StringGrid2.PopupMenu --> PopupMenu1
2. Двойной клик на Items-е PopupMenu1 и в теле процедуры пишешь что надо
procedure TForm1.N1Click(Sender: TObject);
begin
... <<-- !!!
end;
Dennis I. Komarov (2008-06-18 11:43:00) [19]Checked?
Ega23 (2008-06-18 11:40:00) [20]
> или как мне определить нажата ли какая-нибудь кнопка в PopupMenu?
Там нет никаких кнопок.