Программирование в среде Delphi. Часть 2. Создание оконных приложений. Садовская О.Б. - 42 стр.

UptoLike

Составители: 

42
paRight правый верхний угол меню находится у курсора ;
paCenter середина верхней границы меню находится у курсора .
По умолчанию имеет значение paLeft.
property AutoPopup : Boolean;
Если свойство имеет значение true, контекстное меню появляется при
нажатии правой клавиши мыши, если имеет значение false, меню не
появляется (в этом случае следует использовать метод Popup). По
умолчанию имеет значение true.
Метод Popup определяется следующим образом :
procedure Popup(x, y : integer); virtual;
Выводит на экран меню, при этом координаты его левого верхнего
угла равны x и y.
В классе TPopupMenu определено событие OnPopup:
property OnPopup : TNotifyEvent;
Возникает при вызове контекстного меню при нажатии правой кла -
виши мыши, если свойство AutoPopup имеет значение true, либо при
вызове метода Popup. Рассмотрим пример создания главного меню.
Пример 7. Дана квадратная целочисленная матрица размера 4×4. Соз-
дать главное меню, позволяющее выбрать одну из трёх команд:
Максимум (нахождение максимума элементов матрицы )
Минимум (нахождение минимума элементов матрицы )
Сумма (нахождение суммы элементов матрицы )
Для ввода и отображения на форме элементов матрицы использовать
компонент StringGrid.
Для решения задачи поместим на форму компонент StringGrid1 и
установим ему значения свойств, указанные в примере 7. Поместим на
форму компонент Label1, свойство Caption которого равно Ответ , и
компонент Label2, в котором будем размещать вычисленное значение.
Со страницы Standard поместим на форму компонент MainMenu. Вы-
берем свойство Items компонента MainMenu1 и щёлкнем по кнопке с
тремя точками. Появится окно конструктора меню. Введём названия
пунктов меню (свойство Caption). Для определения реакции на выбор
пунктов меню следует по очереди выбирать все пункты меню и щёл -
                                            42
paRight – пра вый верхн ий у гол м ен ю н а ход ит ся у ку рсора ;
paCenter – серед ин а верхн ей гра н ицы м ен ю н а ход ит ся у ку рсора .
По у м олча н ию им еет зн а чен ие paLeft.
property AutoPopup : Boolean;
Е сли свойст во им еет зн а чен ие true, кон т екстн ое м ен ю поя вля ет ся при
н а ж а тии пра вой кла виш и м ыш и, если им еет зн а чен ие false, м ен ю н е
поя вля ет ся (в э    т ом слу ча е след у ет использова т ь м етод Popup). По
у м олча н ию им еет зн а чен ие true.
М ет од Popup опред еля ет ся след у ю щим об ра зом :
procedure Popup(x, y : integer); virtual;
В ывод ит н а э    кра н м ен ю , при э    том коорд ин а т ы его левого верхн его
у гла ра вн ы x и y.
В кла ссе TPopupMenu опред елен о соб ытие OnPopup:
property OnPopup : TNotifyEvent;
В озн ика ет при вызове кон т екст н ого м ен ю при н а ж а т ии пра вой кла -
виш и м ыш и, если свойст во AutoPopup им еет зн а чен ие true, либ о при
вызове м етод а Popup. Ра ссм отрим прим ер созд а н ия гла вн ого м ен ю .
Прим ер7. Д а н а ква д ра т н а я целочислен н а я м а трица ра зм ера 4×4. Соз-
д а т ь гла вн ое м ен ю , позволя ю щее выб ра т ь од н у из т рёх ком а н д :
                     М а ксим у м (н а хож д ен ие м а ксим у м а элем ен т ов м а трицы)
                     М ин им у м (н а хож д ен ие м ин им у м а э лем ен т ов м а трицы)
                     Су м м а     (н а хож д ен ие су м м ы э лем ен тов м а т рицы)
Д ля ввод а и от об ра ж ен ия н а ф орм е э      лем ен т ов м а т рицы использова т ь
ком пон ен т StringGrid.




       Д ля реш ен ия за д а чи пом естим н а ф орм у ком пон ен т StringGrid1 и
у ст а н овим ем у зн а чен ия свойств, у ка за н н ые в прим ере 7. Пом естим н а
ф орм у ком пон ен т Label1, свойст во Caption которого ра вн о О т вет , и
ком пон ен т Label2, в кот ором б у д ем ра зм еща т ь вычислен н ое зн а чен ие.
Со стра н ицы Standard пом ест им н а ф орм у ком пон ен т MainMenu. В ы-
б ерем свойст во Items ком пон ен та MainMenu1 и щёлкн ем по кн опке с
т рем я точка м и. Поя вится окн о кон ст ру кт ора м ен ю . В вед ём н а зва н ия
пу н кт ов м ен ю (свойст во Caption). Д ля опред елен ия реа кции н а выб ор
пу н кт ов м ен ю след у ет по очеред и выб ира т ь все пу н кт ы м ен ю и щёл-