Вниз
Скачать: CL | DM;

Вот задачка!!!   Найти похожие ветки 

 
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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.026 c
2-1154497995
ExCode
2006-08-02 09:53
2006.08.20
форматирование кода delphi


15-1153421716
Vendict
2006-07-20 22:55
2006.08.20
Клиент


2-1154136447
Батя
2006-07-29 05:27
2006.08.20
E-mail


15-1153766168
Степан
2006-07-24 22:36
2006.08.20
RLINK32: Error opening file "Unit_MainForm.dpr" ?!?!?!


15-1153466181
Ламот
2006-07-21 11:16
2006.08.20
GPS карты (в частности Европы)




   Наверх