ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ

MainMenu β€” Π³Π»Π°Π²Π½ΠΎΠ΅ мСню ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Delphi

Π“Π»Π°Π²Π½ΠΎΠ΅ мСню располагаСтся Π² Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ части Ρ„ΠΎΡ€ΠΌΡ‹ ΠΏΠΎΠ΄ Π΅Π΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠΌ (см. ΡΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚) ΠΈ содСрТит Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΎΠ±Ρ‰ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ прилоТСния. Π’ Delphi Π³Π»Π°Π²Π½ΠΎΠ΅ мСню прСдставлСно ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠΌ MainMenu.

ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ

ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ

ΠŸΡ€ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠ² Ρ„ΠΎΡ€ΠΌΡ‹ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠ² строчного мСню. ΠžΡ‚ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΠ΅ ΡˆΠΈΡ€ΠΈΠ½Ρ‹ Ρ„ΠΎΡ€ΠΌΡ‹ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ самого Π΄Π»ΠΈΠ½Π½ΠΎΠ³ΠΎ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°, ΠΈΠΌΠ΅ΡŽΡ‰Π΅Π³ΠΎΡΡ Π² мСню.

ΠŸΡ€ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ прилоТСния Π² Ρ„ΠΎΡ€ΠΌΠ΅ Π²ΠΈΠ΄Π½Ρ‹ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ MainMenu ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π°Ρ Π΅ΠΌΡƒ строка мСню. ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΠ°Ρ строка мСню выглядит ΠΈ Π²Π΅Π΄Π΅Ρ‚ сСбя Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. На этапС проСктирования прилоТСния для ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° Π² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ события OnClick ΠΏΡƒΠ½ΠΊΡ‚Π° мСню слСдуСт Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ этот ΠΏΡƒΠ½ΠΊΡ‚ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹ ΠΈΠ»ΠΈ ΠΌΡ‹ΡˆΠΈ.

ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€ мСню

ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ

Для создания ΠΈ измСнСния мСню Π² процСссС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ прилоТСния Π² срСдС Delphi ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€ мСню (Menu Designer). Запуск ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€Π° мСню выполняСтся ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ Menu Designer (ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€ мСню) контСкстного мСню ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° MainMenu ΠΈΠ»ΠΈ PopupMenu, Π° Ρ‚Π°ΠΊΠΆΠ΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΄Π²ΠΎΠΉΠ½ΠΎΠ³ΠΎ Ρ‰Π΅Π»Ρ‡ΠΊΠ° ΠΌΡ‹ΡˆΠΈ Π½Π° этих ΠΆΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°Ρ…. ΠŸΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· этих ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² слСдуСт Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² Ρ„ΠΎΡ€ΠΌΡƒ. Напомним, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ MainMenu ΠΈ PopupMenu Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ Π½Π° страницС Standard ΠŸΠ°Π»ΠΈΡ‚Ρ€Ρ‹ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ².

ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€ мСню ΠΏΠΎΡ…ΠΎΠΆ Π½Π° тСкстовый Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ ΠΈ прСдоставляСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ достаточно просто ΠΈ ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΊΠΎΠ½ΡΡ‚Ρ€ΡƒΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ мСню любого Ρ‚ΠΈΠΏΠ°. МСню ΠΏΡ€ΠΈ конструировании ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΎΡ‚ ΠΆΠ΅ Π²ΠΈΠ΄, Ρ‡Ρ‚ΠΎ ΠΈ ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ прилоТСния. Π’ΠΈΠ΄ мСню ΠΏΡ€ΠΈ конструировании с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€Π° мСню ΠΏΠΎΠΊΠ°Π·Π°Π½ Π½Π° ΡΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚Π΅ Π½ΠΈΠΆΠ΅.

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€ΠΎΠΌ мСню ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π΅Π³ΠΎ контСкстного мСню (см. ΡΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚), Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠ³ΠΎ Ρ‰Π΅Π»Ρ‡ΠΊΠΎΠΌ ΠΏΡ€Π°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡ‹ΡˆΠΈ ΠΏΡ€ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠΈ указатСля Π² области ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€Π° мСню.

ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ

Π‘ ΠΈΡ… ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ (Insert) ΠΈ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ (Delete) ΠΏΡƒΠ½ΠΊΡ‚ мСню, ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ подмСню (Create Submenu), Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ мСню (Select Menu), ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ мСню ΠΊΠ°ΠΊ шаблон (Save As Template), Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ мСню ΠΈΠ· шаблона (Insert From Template), ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹ мСню (Delete Templates) ΠΈ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ мСню ΠΈΠ· Ρ„Π°ΠΉΠ»Π° рСсурса (Insert From Resource).

ΠŸΡ€ΠΈ конструировании мСню ΠΌΠΎΠΆΠ½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠ΅Ρ€Π΅Ρ‚Π°ΡΠΊΠΈΠ²Π°Ρ‚ΡŒ ΠΌΡ‹ΡˆΡŒΡŽ (drag-and-drop) ΠΏΡƒΠ½ΠΊΡ‚Ρ‹ мСню ΠΈ подмСню. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ совмСстно с ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€ΠΎΠΌ мСню Π˜Π½ΡΠΏΠ΅ΠΊΡ‚ΠΎΡ€ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² позволяСт ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ свойствами ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠ² мСню. Π’ частности, Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΠΏΡƒΠ½ΠΊΡ‚Π° мСню задаСтся ΠΏΡƒΡ‚Π΅ΠΌ присвоСния Π½ΡƒΠΆΠ½ΠΎΠ³ΠΎ значСния Π΅Π³ΠΎ свойству Π‘aption.

ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ

Π’ ΠΎΠΊΠ½Π΅ ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€Π° мСню ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ΅ мСню Π² качСствС шаблона для дальнСйшСго использования. ΠŸΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ контСкстного мСню Save As Template (Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊ шаблон) появляСтся ΠΎΠΊΠ½ΠΎ Save Template (Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ шаблон) (см. ΡΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚).

ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ

Π’ ΠΏΠΎΠ»Π΅ Template Description (ОписаниС шаблона) этого ΠΎΠΊΠ½Π° Π½ΡƒΠΆΠ½ΠΎ ввСсти имя для сохранСния шаблона мСню. Π‘ΠΎΡ…Ρ€Π°Π½Π΅Π½Π½Ρ‹ΠΉ шаблон Π² дальнСйшСм ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ создании мСню Π² этом ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… прилоТСниях. Бписок Π² Π½ΠΈΠΆΠ½Π΅ΠΉ части ΠΎΠΊΠ½Π° Save Template содСрТит ΠΈΠΌΠ΅Π½Π° Ρ€Π°Π½Π΅Π΅ сохранСнных шаблонов мСню.

Для Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ сохранСнного шаблона мСню слСдуСт Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ контСкстного мСню Insert From Template (Π’ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΈΠ· шаблона), ΠΏΡ€ΠΈ этом появляСтся ΠΎΠΊΠ½ΠΎ, ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌΡƒ Π²Ρ‹ΡˆΠ΅. ПослС наТатия ΠΊΠ½ΠΎΠΏΠΊΠΈ ОК Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΉ Π² ΠΎΠΊΠ½Π΅ шаблон ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΊ создаваСмому Π² ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€Π΅ мСню ΠΊΠ°ΠΊ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΡƒΠ½ΠΊΡ‚.

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€Π° мСню нСльзя ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ мСню Π² качСствС рСсурса.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Как ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ

ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Delphi MainMenu ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для добавлСния ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ мСню, элСмСнта, Π±Π΅Π· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π½Π΅ обходится Π½ΠΈ ΠΎΠ΄Π½ΠΎ ΠΈΠ· ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для Windows.
Π§Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Delphi Π³Π»Π°Π²Π½ΠΎΠ΅ мСню, Π½ΡƒΠΆΠ½ΠΎ Ρ€Π°ΡΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π½Π° Π€ΠΎΡ€ΠΌΠ΅ Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠΌ мСстС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ MainMenu. ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ MainMemu Π½Π΅Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ, хотя ΠΈ отобраТаСтся Π½Π° ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏΠ΅ Π€ΠΎΡ€ΠΌΡ‹ ΠΊΠ°ΠΊ нСбольшой ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚, Π² Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π΅ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΈΠ΄Π΅Π½. ΠžΠΏΡ†ΠΈΠΈ Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ мСню ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π°. Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ мСню вызываСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΄Π²ΠΎΠΉΠ½ΠΎΠ³ΠΎ Ρ‰Π΅Π»Ρ‡ΠΊΠ° ΠΏΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρƒ MainMenu. ΠŸΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ мСню пустоС, Π½ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠ΄ΠΈΠ½ Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ элСмСнт:

ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ
ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ автоматичСски Delphi создаёт ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ пустой ΠΏΡƒΠ½ΠΊΡ‚ мСню Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ уровня. А Ρ‰Ρ‘Π»ΠΊΠ½ΡƒΠ² Π² Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ мСню ΠΏΠΎ синСму ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΡ‡ΠΊΡƒ F ile, ΠΌΡ‹ сразу ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ пустой ΠΏΡƒΠ½ΠΊΡ‚ мСню Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ уровня. Они Π½Π΅ Π²Ρ‹Π΄Π΅Π»Π΅Π½Ρ‹, ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ Π±Π΅Π»Ρ‹ΠΌΠΈ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ°ΠΌΠΈ. Π©Π΅Π»ΠΊΠ½ΡƒΠ² ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΈΠ· Π½ΠΈΡ…, ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ. Пока ΠΈΡ… свойства Π½Π΅ Π·Π°Π΄Π°Π½Ρ‹, Π² Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π΅ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π½Π° Π€ΠΎΡ€ΠΌΠ΅ ΠΎΠ½ΠΈ Π½Π΅ появятся, ΠΈ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ Π² Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ ΠΈΡ… Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ.

ΠšΡΡ‚Π°Ρ‚ΠΈ, ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ OnClick ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠ² мСню Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ уровня Π½Π΅ ΠΎΠ±ΡΠ·ΡΡ‚Π΅Π»ΡŒΠ½ΠΎ, раскрываниС мСню ΠΏΡ€ΠΈ Ρ‰Π΅Π»Ρ‡ΠΊΡƒ ΠΌΡ‹ΡˆΠΊΠΎΠΉ происходит автоматичСски. Но Π² случаС нСобходимости произвСсти ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ дСйствия ΠΏΡ€ΠΈ раскрытии мСню этот ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

BestProg

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ создания Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ мСню. ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ TMainMenu

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

УсловиС Π·Π°Π΄Π°Ρ‡ΠΈ

Π—Π°Π΄Π°Π½Π° Ρ„ΠΎΡ€ΠΌΠ° прилоТСния. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ срСдства Embarcadero Delphi 2010 ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ мСню ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° рисункС 1.

ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ

Рис. 1. МСню прилоТСния, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅

1. Π—Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Delphi. Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚
2. БозданиС главного мСню

ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ

Рис. 2. Главная Ρ„ΠΎΡ€ΠΌΠ° прилоТСния с ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠΌ MainMenu1

Π’Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌ Ρ€Π΅ΠΆΠΈΠΌ формирования мСню (рис. 3).

Π­Ρ‚ΠΎ осущСствляСтся двумя способами:

ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ

Рис. 3. Команда Π²Ρ‹Π±ΠΎΡ€Π° ΠΎΠΊΠ½Π° создания мСню

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π²Ρ‹Π·ΠΎΠ²Π° Β« Menu Designer… Β» открываСтся ΠΎΠΊΠ½ΠΎ формирования мСню (рис. 4).

ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ

Рис. 4. Окно для создания мСню

Π’ ячСйки мСню Π²Π²ΠΎΠ΄ΠΈΠΌ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ названия элСмСнтов (ΠΊΠΎΠΌΠ°Π½Π΄) ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ свойство Caption для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ элСмСнта мСню. МоТно ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΡΠ»ΠΎΠΆΠ½ΡƒΡŽ структуру ΠΈΠ· ΡΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΡ… подмСню. Π’ нашСм случаС создаСм мСню ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° рисункС 5.

ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ

Рис. 5. Π‘Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ мСню

МСню Β« File… Β» содСрТит подмСню с ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ:

Команда мСню, Β« Exit Β» Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ подмСню.

3. НазначСниС клавиш быстрого Π²Ρ‹Π·ΠΎΠ²Π° элСмСнтам мСню

ΠžΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΈΠΌ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ клавиш Β« Ctrl+N Β» для ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Β« New… Β» ΠΈΠ· мСню Β« File Β«. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ Β« Ctrl+N Β» Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π° Β« New… Β«.

Для этого Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ дСйствий (рис. 6):

ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ

Рис. 6. НазначСниС ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ клавиш Β«Ctrl+NΒ» ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Β«New…» ΠΈΠ· мСню Β«FileΒ»

Богласно с условиСм Π·Π°Π΄Π°Ρ‡ΠΈ Π½Π°Π·Π½Π°Ρ‡Π°Π΅ΠΌ Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ мСню клавиши быстрого Π²Ρ‹Π·ΠΎΠ²Π°. Окно Β«Menu Designer…» Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΈΠ΄ ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° рисункС 7.

ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ

Рис. 7. Окно Β«Menu DesignerΒ» послС ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ формирования

4. Запуск ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

МоТна ΠΏΡ€ΠΎΡ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΈ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π΅Π΅ Π½Π° исполнСниС. Окно ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΈΠ΄ ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° рисункС 8.

ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ

Рис. 8. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ выполнСния с Ρ€Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚Ρ‹ΠΌ мСню Β«FileΒ»

ПослС Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ события, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ Ρ‚ΠΎΠΉ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅: тСория ΠΈ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°

Π ΡƒΠ±Ρ€ΠΈΠΊΠΈ

БвСТиС записи

ΠŸΡ€ΠΈ использовании ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠ² сайта, ссылка Π½Π° сайт ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Π°.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Как ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ

ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Delphi MainMenu ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для добавлСния ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ мСню, элСмСнта, Π±Π΅Π· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π½Π΅ обходится Π½ΠΈ ΠΎΠ΄Π½ΠΎ ΠΈΠ· ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для Windows.
Π§Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Delphi Π³Π»Π°Π²Π½ΠΎΠ΅ мСню, Π½ΡƒΠΆΠ½ΠΎ Ρ€Π°ΡΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π½Π° Π€ΠΎΡ€ΠΌΠ΅ Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠΌ мСстС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ MainMenu. ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ MainMemu Π½Π΅Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ, хотя ΠΈ отобраТаСтся Π½Π° ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏΠ΅ Π€ΠΎΡ€ΠΌΡ‹ ΠΊΠ°ΠΊ нСбольшой ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚, Π² Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π΅ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΈΠ΄Π΅Π½. ΠžΠΏΡ†ΠΈΠΈ Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ мСню ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π°. Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ мСню вызываСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΄Π²ΠΎΠΉΠ½ΠΎΠ³ΠΎ Ρ‰Π΅Π»Ρ‡ΠΊΠ° ΠΏΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρƒ MainMenu. ΠŸΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ мСню пустоС, Π½ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠ΄ΠΈΠ½ Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ элСмСнт:

ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ
ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ автоматичСски Delphi создаёт ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ пустой ΠΏΡƒΠ½ΠΊΡ‚ мСню Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ уровня. А Ρ‰Ρ‘Π»ΠΊΠ½ΡƒΠ² Π² Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ мСню ΠΏΠΎ синСму ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΡ‡ΠΊΡƒ F ile, ΠΌΡ‹ сразу ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ пустой ΠΏΡƒΠ½ΠΊΡ‚ мСню Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ уровня. Они Π½Π΅ Π²Ρ‹Π΄Π΅Π»Π΅Π½Ρ‹, ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ Π±Π΅Π»Ρ‹ΠΌΠΈ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ°ΠΌΠΈ. Π©Π΅Π»ΠΊΠ½ΡƒΠ² ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΈΠ· Π½ΠΈΡ…, ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ. Пока ΠΈΡ… свойства Π½Π΅ Π·Π°Π΄Π°Π½Ρ‹, Π² Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π΅ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π½Π° Π€ΠΎΡ€ΠΌΠ΅ ΠΎΠ½ΠΈ Π½Π΅ появятся, ΠΈ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ Π² Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ ΠΈΡ… Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ.

ΠšΡΡ‚Π°Ρ‚ΠΈ, ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ OnClick ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠ² мСню Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ уровня Π½Π΅ ΠΎΠ±ΡΠ·ΡΡ‚Π΅Π»ΡŒΠ½ΠΎ, раскрываниС мСню ΠΏΡ€ΠΈ Ρ‰Π΅Π»Ρ‡ΠΊΡƒ ΠΌΡ‹ΡˆΠΊΠΎΠΉ происходит автоматичСски. Но Π² случаС нСобходимости произвСсти ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ дСйствия ΠΏΡ€ΠΈ раскрытии мСню этот ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ.

ΠžΠ±Π·ΠΎΡ€ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Delphi Π’ Π½Π°Ρ‡Π°Π»ΠΎ ΡƒΡ€ΠΎΠΊΠ° Delphi ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ PopupMenu

А ΠΏΠΎΡ‡Π΅ΠΌΡƒ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ссылки Π½Π° ваши послСдниС ΡƒΡ€ΠΎΠΊΠΈ?
ScrollBar
GroupBox
RadioGroup
Panel
ActionList

Π’Π°ΠΊ Π½ΡƒΠΆΠ½Π° информация Π² Ρ…ΠΎΡ€ΠΎΡˆΠ΅ΠΌ ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½ΠΈΠΈ.

Π‘Π΄Π΅Π»Π°ΠΉΡ‚Π΅ поТалуйста! Бпасибо! Π‘Π΅Ρ€Π³Π΅ΠΉ, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ 19.03.14, 15:24:20
Π­Ρ‚ΠΈ mainmenu ΠΈΠ»ΠΈ actionmenedger ΠΏΠΎΠ»Π½Ρ‹ΠΉ атстой ΠΏΠΎΠΊΡ€Π°ΠΉΠ½Π΅ ΠΌΠ΅Ρ€Π΅ Π² Ρ‚ΠΎΠΌ Π²ΠΈΠ΄Π΅ Π² ΠΊΠ°ΠΊΠΎΠΌ ΠΎΠ½ΠΈ Π΅ΡΡ‚ΡŒ Π² c++builder6.Π’Ρ€ΠΎΠ΄Π΅ Π±Ρ‹ Ρ‚Π°ΠΊΠΈΠ΅ Π²Π°ΠΆΠ½Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠ°Π½Π΅Π½Ρ‚Ρ‹,Π° Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ mainmenu Π½Π΅ Π²ΠΏΠΈΡΠ°Ρ‚ΡŒ Π² ΠΎΠ±Ρ‰ΠΈΠΉ интСрфСйс Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π½Π΅Ρ‚ свойства color ΠΈΠ»ΠΈ actionmeneger Π½Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ полосы Π² мСню,ΠΊΠΎΡ€ΠΎΡ‡Π΅ ΠΏΠΎΠ»Π½ΠΎΠ΅ Π³. Обидно,Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ ΠΈΠ·Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊΠΎΠ³Π΄Π° ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Ρ‚Π°ΠΊΠΈΠ΅ свойства ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ. Автор, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ 19.03.14, 15:29:32
Π”Π°, Π‘Π΅Ρ€Π³Π΅ΠΉ, согласСн, Ρ‡Ρ‚ΠΎ стандартизация ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Π΅Ρ‚ возмоТности. Но ΠΎΠ½Π° ΠΆΠ΅ ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ Π΄Ρ€ΡƒΠ³ΠΈΠ΅: Π½Π΅ ΠΎΡ‚Π²Π»Π΅ΠΊΠ°ΡΡΡŒ Π½Π° «ΠΊΡ€Π°ΡΠΈΠ²ΠΎΡΡ‚ΠΈ», ΠΌΠΎΠΆΠ½ΠΎ быстро ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ эффСктивныС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

МСню Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ… Π½Π° Delphi

МСню являСтся ваТнСйшими элСмСнтами управлСния ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса любого прилоТСния. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, коснСмся ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° дСйствий, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π³ΠΎ ΡΠΈΠ½Ρ…Ρ€ΠΎΠ½ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡΠΎΠ²ΠΌΠ΅ΡΡ‚Π½ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… элСмСнтов управлСния.

ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈ всС Windows-прилоТСния ΠΈΠΌΠ΅ΡŽΡ‚ мСню, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ являСтся распространСнным элСмСнтом ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса. МСню прСдставляСт собой список ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½Π΅Π½Π½Ρ‹Ρ… ΠΏΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΌΡƒ ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΡƒ ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠ², ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ ΠΈΠ»ΠΈ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ΅ мСню (подмСню). Π’Ρ‹Π±ΠΎΡ€ ΠΏΡƒΠ½ΠΊΡ‚Π° мСню равносилСн Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡŽ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΈΠ»ΠΈ Ρ€Π°ΡΠΊΡ€Ρ‹Ρ‚ΠΈΡŽ подмСню.

ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ

ΠŸΡƒΠ½ΠΊΡ‚ мСню ΠΈΠ»ΠΈ подмСню прСдставляСт собой ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Ρ‚ΠΈΠΏΠ° TMenuItem. ΠžΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΡƒΠ½ΠΊΡ‚ мСню (подмСню) ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π²ΠΈΠ΄Π΅Π½ ΠΊΠ°ΠΊ тСкстовый Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠΉ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΡƒΠ½ΠΊΡ‚Π° мСню. ΠŸΡƒΠ½ΠΊΡ‚ мСню ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Π΄Π΅Π»Π΅Π½ (ΠΌΠ°Ρ€ΠΊΠΈΡ€ΠΎΠ²Π°Π½) для указания Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠ³ΠΎ состояния. Класс TMenuItem слуТит для прСдставлСния ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠ² Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ ΠΈ контСкстных мСню.

Cвойства ΠΏΡƒΠ½ΠΊΡ‚Π° мСню:

Bitmap Ρ‚ΠΈΠΏΠ° TBitmap (Π·Π½Π°Ρ‡ΠΎΠΊ, Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Π΅ΠΌΡ‹ΠΉ слСва ΠΎΡ‚ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° ΠΏΡƒΠ½ΠΊΡ‚Π° мСню). По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ свойство ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Nil, ΠΈ Π·Π½Π°Ρ‡ΠΎΠΊ отсутствуСт;

Break Ρ‚ΠΈΠΏΠ° TmenuBreak (ΠΏΡ€ΠΈΠ·Π½Π°ΠΊ раздСлСния мСню Π½Π° столбцы). Бвойство Break ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎ ΠΈΠ· Ρ‚Ρ€Π΅Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ:

Caption Ρ‚ΠΈΠΏΠ° String (строка тСкста, отобраТаСмая ΠΊΠ°ΠΊ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΠΏΡƒΠ½ΠΊΡ‚Π° мСню). Если Π² качСствС Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ символ Β«-Β», Ρ‚ΠΎ Π½Π° мСстС ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΏΡƒΠ½ΠΊΡ‚Π° мСню отобраТаСтся Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ линия. ΠŸΡ€ΠΈ этом, нСсмотря Π½Π° ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π»ΠΈΠ½ΠΈΠΈ, свойство Caption ΠΏΠΎΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Β«-Β»;

Checked Ρ‚ΠΈΠΏΠ° Boolean (ΠΏΡ€ΠΈΠ·Π½Π°ΠΊ Ρ‚ΠΎΠ³ΠΎ, ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½ ΠΏΡƒΠ½ΠΊΡ‚ ΠΈΠ»ΠΈ Π½Π΅Ρ‚). Если свойство установлСно Π² Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ True, Ρ‚ΠΎ ΠΏΡƒΠ½ΠΊΡ‚ ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½, ΠΈ Π² Π΅Π³ΠΎ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅ появляСтся ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΊΠ°. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ свойство Checked ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ False, ΠΈ ΠΏΡƒΠ½ΠΊΡ‚ мСню Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΊΠΈ;

AutoCheck Ρ‚ΠΈΠΏΠ° Boolean (ΠΏΡ€ΠΈΠ·Π½Π°ΠΊ автоматичСского измСнСния значСния свойства Checked Π½Π° ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΠΎΠ΅ ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ ΠΏΡƒΠ½ΠΊΡ‚Π° мСню);

Count Ρ‚ΠΈΠΏΠ° Integer (количСство ΠΏΠΎΠ΄ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠ² Π² Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡƒΠ½ΠΊΡ‚Π΅ мСню). Π­Ρ‚ΠΎ свойство Π΅ΡΡ‚ΡŒ Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΡƒΠ½ΠΊΡ‚Π° мСню. Если ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ ΠΏΡƒΠ½ΠΊΡ‚ Π½Π΅ содСрТит ΠΏΠΎΠ΄ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠ², Ρ‚ΠΎ свойство Count ΠΈΠΌΠ΅Π΅Ρ‚ Π½ΡƒΠ»Π΅Π²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅;

Enabled Ρ‚ΠΈΠΏΠ° Boolean (ΠΏΡ€ΠΈΠ·Π½Π°ΠΊ активности ΠΏΡƒΠ½ΠΊΡ‚Π°, Ρ‚. Π΅. Π±ΡƒΠ΄Π΅Ρ‚ Π»ΠΈ ΠΎΠ½ Ρ€Π΅Π°Π³ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° события ΠΎΡ‚ ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹ ΠΈ ΠΌΡ‹ΡˆΠΈ). Если свойство Enabled ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π² Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ False, Ρ‚ΠΎ ΠΏΡƒΠ½ΠΊΡ‚ мСню Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΌ, ΠΈ Π΅Π³ΠΎ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ становится Π±Π»Π΅Π΄Π½Ρ‹ΠΌ. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ свойство Enabled ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ True, ΠΈ ΠΏΡƒΠ½ΠΊΡ‚ мСню Π°ΠΊΡ‚ΠΈΠ²Π΅Π½;

Items Ρ‚ΠΈΠΏΠ° TMenuItems (массив ΠΏΠΎΠ΄ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠ² Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ ΠΏΡƒΠ½ΠΊΡ‚Π° мСню). Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΡƒΠ½ΠΊΡ‚Π° мСню, ΠΈΠΌΠ΅ΡŽΡ‰Π΅Π³ΠΎ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ΅ мСню (подмСню), ΠΏΡƒΠ½ΠΊΡ‚Ρ‹ этого подмСню пСрСчислСны Π² свойствС Items. Π­Ρ‚ΠΎ свойство позволяСт ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ ΠΏΡƒΠ½ΠΊΡ‚Π°ΠΌ подмСню ΠΏΠΎ ΠΈΡ… позициям Π² массивС: items [0], items [1] ΠΈ Ρ‚. Π΄.;

RadioItem Ρ‚ΠΈΠΏΠ° Boolean (Π²ΠΈΠ΄ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΊΠΈ, ΠΏΠΎΡΠ²Π»ΡΡŽΡ‰Π΅ΠΉΡΡ Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅ ΠΏΡƒΠ½ΠΊΡ‚Π°). Если свойство установлСно Π² Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ False (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ), Ρ‚ΠΎ Π² качСствС ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π·Π½Π°Ρ‡ΠΎΠΊ Β«Π³Π°Π»ΠΎΡ‡ΠΊΠ°Β», Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС ΠΏΡƒΠ½ΠΊΡ‚ отмСчаСтся ΠΆΠΈΡ€Π½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ;

Visible Ρ‚ΠΈΠΏΠ° Boolean (ΠΏΡ€ΠΈΠ·Π½Π°ΠΊ видимости ΠΏΡƒΠ½ΠΊΡ‚Π° Π½Π° экранС). Если свойство Visible установлСно Π² Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ False, Ρ‚ΠΎ ΠΏΡƒΠ½ΠΊΡ‚ мСню Π½Π° экранС Π½Π΅ отобраТаСтся. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ свойство Visible ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ True, ΠΈ ΠΏΡƒΠ½ΠΊΡ‚ Π²ΠΈΠ΄Π΅Π½ Π² мСню.

ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСню Π² Π΄Π΅Π»Ρ„ΠΈ

На ΡΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚Π΅ Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ мСню Menul (подмСню Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ мСню), Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π½Π° Π΄Π²Π° столбца. Π£ ΠΏΡƒΠ½ΠΊΡ‚Π° ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ этого мСню свойство Break ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ mbBarBreak, Ρƒ ΠΏΡƒΠ½ΠΊΡ‚Π° ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΊΠ°ΠΊ. свойство Breakβ€” Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ mbBarBreak, для Π—Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΊΠ°ΠΊ. свойству Break установлСно Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ mbNone.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹ΠΌ событиСм, связанным с ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠΌ мСню, являСтся событиС OnClick, Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‰Π΅Π΅ ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ ΠΏΡƒΠ½ΠΊΡ‚Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹ ΠΈΠ»ΠΈ ΠΌΡ‹ΡˆΠΈ. Π’ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ события OnClick ΠΈΠ»ΠΈ для ΠΈΠΌΠΈΡ‚Π°Ρ†ΠΈΠΈ Π²Ρ‹Π±ΠΎΡ€Π° ΠΏΡƒΠ½ΠΊΡ‚Π° мСню ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ Click. Π’Ρ‹Π·ΠΎΠ² этой ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ эквивалСнтСн Π²Ρ‹Π±ΠΎΡ€Ρƒ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΏΡƒΠ½ΠΊΡ‚Π° мСню ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ.

НаТатиС ΠΊΠ½ΠΎΠΏΠΊΠΈ Button1 ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Ρ‚ΠΎΠΌΡƒ ΠΆΠ΅ эффСкту, Ρ‡Ρ‚ΠΎ ΠΈ Π²Ρ‹Π±ΠΎΡ€ ΠΏΡƒΠ½ΠΊΡ‚Π° мСню mnuLockltem.

Для создания мСню (ΠΊΠ°ΠΊ подмСню Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ мСню) ΠΈΠ»ΠΈ контСкстного мСню ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ прилоТСния ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€ мСню. МСню Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ динамичСски β€” нСпосрСдствСнно Π² Ρ…ΠΎΠ΄Π΅ выполнСния прилоТСния.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *