Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.10.31;
Скачать: CL | DM;

Вниз

Подскажите, как можно "объеденить" TMenu и TMenuItem   Найти похожие ветки 

 
Leaner ©   (2004-10-13 15:41) [0]

Написал две процедуры:
function IsNeedMenuItem(const Item:TMenuItem;const   aCaption:string;Tag:integer):Boolean;
begin
Result:=((Tag=-1) or (Item.Tag=Tag)) and (CompareText(Item.Caption,aCaption)=0);
end;

function FindFirstItem(const BaseMenu:TMenu;const aCaption:string;const ItemTag:integer):TMenuItem;
var
i:integer;
begin
Result:=nil;
if (aCaption="") or (BaseMenu=nil) then Exit;
for i:=0 to BaseMenu.Items.Count-1 do
 if IsNeedMenuItem(BaseMenu.Items[i],aCaption,ItemTag) then
   begin
    Result:=BaseMenu.Items[i];
    Exit;
   end;
end;

function FindSubItem(const BaseItem:TMenuItem;const aCaption:string;const ItemTag:integer):TMenuItem;
var
i:integer;
TempItem:TMenuItem;
begin
Result:=nil;
if (aCaption="") or (BaseItem=nil) then Exit;
TempItem:=BaseItem;
for i:=0 to TempItem.Count-1 do
 if IsNeedMenuItem(TempItem.Items[i],aCaption,ItemTag) then
   begin
    Result:=TempItem.Items[i];
    Exit;
   end;
end;

Как бы мне из них сделать одну универсальную ?


 
Erik1 ©   (2004-10-13 16:04) [1]

А может ты еще напишеш, чего тебе надо? Вобщето на форумах принято вопросы задавать, а не ребусы для разгадки выкладывать. Хотя если телепаты подтянутся..........


 
Erik1 ©   (2004-10-13 16:05) [2]

А может ты еще напишеш, чего тебе надо? Вобщето на форумах принято вопросы задавать, а не ребусы для разгадки выкладывать. Хотя если телепаты подтянутся..........


 
Leaner ©   (2004-10-13 16:11) [3]

>Erik1
Вопрос задан в последней строке поста.


 
Amoeba ©   (2004-10-13 16:29) [4]


> Как бы мне из них сделать одну универсальную ?

А какой в этом смысл? Зачем все сваливать в одну кучу?



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

Текущий архив: 2004.10.31;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.024 c
14-1097631755
Думкин
2004-10-13 05:42
2004.10.31
С днем рождения! 13 октября


4-1092918672
menart
2004-08-19 16:31
2004.10.31
Как можно остановить службу на какое-то и потом ее запустить?


11-1082110098
Bezols
2004-04-16 14:08
2004.10.31
KOLEDB - не получается добавить новые записи


3-1096872920
mid
2004-10-04 10:55
2004.10.31
настройка памяти SGA oracle


4-1096000894
snake1977
2004-09-24 08:41
2004.10.31
Контекстное меню для каталога