Форум: "Начинающим";
Текущий архив: 2006.08.20;
Скачать: [xml.tar.bz2];
ВнизВот задачка!!! Найти похожие ветки
← →
Lexx_Lamer © (2006-07-28 22:04) [0]Проблема проявляется в следующей ситуации: если у TAction определить shortcut, ActionList разместить на фрейме, фрейм положить на другой фрейм,
а этот фрейм положить уже на форму и никакой фрейм не менять при этом,
то shortcut не срабатывает. Если же использовать только один фрейм,
то все работает. Нужно понять, в чем дело, написать решение
на уровне компонентов (например, наследника TActionList или TFrame),
объяснить, почему это решение работает и не имеет вредных побочных эффектов.
Данн пример, я почти понимаю как это исправить, нужно определить
спомощью SetParent наследуемую форму, (скоре всего).
Но так как я по Delfi почти что ламер подскажите как это сделать
код в котором нужно ,как мне кажеться исправить ниже
unit IssueNavigationFrame;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DBActns, ActnList, Buttons, ExtCtrls, db;
type
TIssueNavigation = class(TFrame)
ActionList1: TActionList;
First: TAction;
procedure FirstExecute(Sender: TObject);
private
{ Private declarations }
public
constructor Create( Owner: TComponent ); override;
end;
implementation
{$R *.dfm}
{ TIssueNavigation }
constructor TIssueNavigation.Create(Owner: TComponent);
begin
inherited;
// SetParent( Parent ); КАК Мне кажеться нужно сдесь прописать
end;
procedure TIssueNavigation.FirstExecute(Sender: TObject);
begin
ShowMessage("First called");
end;
end.
ПОДСКАЖИТЕ ПОЖАЛУЙСТА КАК ЭТО СДЕЛАТЬ!!!
← →
tesseract © (2006-07-28 22:21) [1]насколько сейчас могу.
определи отдельный фрейм с taction и кинь его на все формы.
← →
Lexx_lamer © (2006-07-28 22:56) [2]Втом то и дело, что послек расположения всех фреймов трогать ничего нельзя, можно лишь изменить код, скорее всего в этом месте, добавить Set Parent, хотя я и не уверен
constructor TIssueNavigation.Create(Owner: TComponent);
begin
inherited;
// SetParent( Parent );// КАК Мне кажеться нужно сдесь прописать
end;
procedure TIssueNavigation.FirstExecute(Sender: TObject);
begin
ShowMessage("First called"); //а вот эта команда которая должна работать
end; //но не хочет
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.08.20;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.043 c