![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
проблема с меню [D6, Win95/98]
Marat Zaripov © (2002-08-16 12:13:00)Проблема с созданием меню:
В секции public главной MDI формы процедура:
procedure TMainForm.CreateMyMenu(ParentMenu: TParentMenu; ClickEvent: TNotifyEvent);
var MenIt : TMenuItem;
i, j: integer;
SprArray: array[1..3] of TTable;
str: string;
begin
for j:=1 to 3 do
begin
MenIt:=TMenuItem.Create(ParentMenu[j]);
MenIt.GroupIndex:=j;
MenIt.RadioItem:=true;
MenIt.Caption:="Без фильтра";
MenIt.Checked:=true;
MenIt.OnClick:=ClickEvent;
ParentMenu[j].Insert(0,MenIt);
MenIt:=TMenuItem.Create(ParentMenu[j]);
MenIt.GroupIndex:=j;
MenIt.Caption:="-";
ParentMenu[j].Insert(0,MenIt);
end;
SprArray[1]:=DM.TableSprGrupp;
SprArray[2]:=DM.TableSprProiz;
SprArray[3]:=DM.TableSprStran;
for j:=1 to 3 do
begin
SprArray[j].First;
for i:=1 to SprArray[j].RecordCount do
begin
MenIt:=TMenuItem.Create(ParentMenu[j]);
MenIt.GroupIndex:=j;
MenIt.RadioItem:=true;
case j of
1: str:="naimgruppa";
2: str:="naimproizv";
3: str:="naimstrana";
end;
MenIt.Caption:=SprArray[j].FieldByName(str).Value;
MenIt.OnClick:=ClickEvent;
ParentMenu[j].Insert(0,MenIt);
SprArray[j].Next;
end;
end;
вызов процедуры осуществляется в главном Unit’е при создании MDIChild формы, в дочернем Unit’е описывается ClickEvent, на дочерней форме расположено RXMainMenu c тремя главными пунктами
Проблема в том, что при создании item’ов меню первый и последний создаются нормально, а средний со знаком & то есть в меню получаем что-то типа «П ункт меню» а не «Пункт меню» без подчерка. Caption’ы меню затем должны использоваться, по ним производится поиск в базе. Как избавится от подчерка?
Skier (2002-08-16 12:19:00) [1]>Marat Zaripov
ParentMenu.AutoHotkeys := maManual ?