Π Π°Π·Π½ΠΎΠ΅

C модальноС ΠΎΠΊΠ½ΠΎ: ΠœΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΈ Π½Π΅ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹Π΅ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²Ρ‹Π΅ ΠΎΠΊΠ½Π°

25.06.2023

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

МодальноС окно

Π­Ρ‚ΠΎΡ‚ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ позволяСт ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ модальноС ΠΎΠΊΠ½ΠΎ ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ дСйствия. НапримСр, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π°ΠΆΠΈΠΌΠ°Π΅Ρ‚ Π½Π° элСмСнт Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅, страницС ΠΈΠ»ΠΈ ΠΏΠΎΡ€Ρ‚Π»Π΅Ρ‚Π΅.

Π½Π°Ρ‡Π°Π»ΠΎΒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅

Π Π°Π±ΠΎΡ‚Π° с этим ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠΌ доступна Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌ Ρ€Π°Π½Ρ‚Π°ΠΉΠΌΠ΅. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎΠ± этом Ρ€Π΅ΠΆΠΈΠΌΠ΅ Ρ‡ΠΈΡ‚Π°ΠΉΡ‚Π΅ Π² Π‘Π°Π·Π΅ Π·Π½Π°Π½ΠΈΠΉ.

ΠΊΠΎΠ½Π΅Ρ†Β Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅

Π’Π½ΡƒΡ‚Ρ€ΠΈ модального ΠΎΠΊΠ½Π° ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ (ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ, ΠΏΠ°Π½Π΅Π»ΠΈ, Π²ΠΊΠ»Π°Π΄ΠΊΠΈ ΠΈ Ρ‚. Π΄.) ΠΈ свойства.

Окно Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя Π΄Π²Π΅ области:

  • ΠΎΠ±Π»Π°ΡΡ‚ΡŒ для основного ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π°;
  • ΠΏΠΎΠ΄Π²Π°Π», Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΠΈ.

Π•Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ².

Для модального ΠΎΠΊΠ½Π° ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ настройки.

Окно настроСк состоит ΠΈΠ· Π²ΠΊΠ»Π°Π΄ΠΎΠΊ ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅, Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅, Бобытия, БистСмныС ΠΈ ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅.

Π’ΠΊΠ»Π°Π΄ΠΊΠ° Β«ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅Β»

На этой Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ основныС настройки ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°.

Π‘ΠΊΡ€Ρ‹Ρ‚ΡŒ β€” ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅, ΠΏΡ€ΠΈ ΠΊΠ°ΠΊΠΈΡ… условиях модальноС ΠΎΠΊΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ ΠΈΠ»ΠΈ ΡΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒΡΡ. НапримСр, ΠΎΠΊΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΡΠ²Π»ΡΡ‚ΡŒΡΡ, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π°Π²ΠΎΠ΄ΠΈΡ‚ курсор Π½Π° ΠΏΠΎΠ»Π΅. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ для этого Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΈΠ»ΠΈ Ρ„ΠΎΡ€ΠΌΡƒΠ»Ρƒ. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎΠ± этом ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π² этой ΡΡ‚Π°Ρ‚ΡŒΠ΅.

Π’Π°ΠΆΠ½ΠΎ: Ссли Π²Ρ‹ Π½Π΅ ΡƒΠΊΠ°ΠΆΠ΅Ρ‚Π΅ условия отобраТСния ΠΈ скрытия, ΠΎΠΊΠ½ΠΎ Π² интСрфСйсС Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.

Волько Π½Π° Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ β€” ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅, ΠΌΠΎΠΆΠ΅Ρ‚ Π»ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π² этом ΠΎΠΊΠ½Π΅. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹:

β€” ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ поля. Он смоТСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹Π΅ Ρ€Π°Π½Π΅Π΅ Π΄Π°Π½Π½Ρ‹Π΅.

β€” Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ поля Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ настроСк Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ Ρ„ΠΎΡ€ΠΌΡ‹, страницы, ΠΏΠΎΡ€Ρ‚Π»Π΅Ρ‚Π° ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°.

Если Ρ„Π»Π°ΠΆΠΎΠΊ Π½Π΅ установлСн, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ поля Π² этом ΠΎΠΊΠ½Π΅.

Π’ΠΈΠΏ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ β€” способ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ модального ΠΎΠΊΠ½Π° Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅, страницС, ΠΏΠΎΡ€Ρ‚Π»Π΅Ρ‚Π΅ ΠΈΠ»ΠΈ Π² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅:

  • Бинхронная β€” ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚ всС Π΄Π°Π½Π½Ρ‹Π΅ Π² появившСмся ΠΎΠΊΠ½Π΅, ΠΊΠΎΠ³Π΄Π° загрузятся всС элСмСнты Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ Ρ„ΠΎΡ€ΠΌΡ‹, страницы, ΠΏΠΎΡ€Ρ‚Π»Π΅Ρ‚Π° ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°;
  • ЛСнивая β€” Π΄Π°Π½Π½Ρ‹Π΅ Π² ΠΎΠΊΠ½Π΅ Π·Π°Π³Ρ€ΡƒΠΆΠ°ΡŽΡ‚ΡΡ послС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΠ»Π°ΡΡŒ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠ°Ρ Ρ„ΠΎΡ€ΠΌΠ°, страница, ΠΏΠΎΡ€Ρ‚Π»Π΅Ρ‚ ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚;
  • ΠŸΡ€ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ β€” Π΄Π°Π½Π½Ρ‹Π΅ Π² ΠΎΠΊΠ½Π΅ отобразятся Π² Ρ‚ΠΎΡ‚ ΠΌΠΎΠΌΠ΅Π½Ρ‚, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚ ΠΎΠΊΠ½ΠΎ Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅, страницС, ΠΏΠΎΡ€Ρ‚Π»Π΅Ρ‚Π΅ ΠΈΠ»ΠΈ Π² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅, Ρ‚.
    Π΅. ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ ΠΎΡ‚ΠΊΡ€ΠΎΠ΅Ρ‚ Π΅Π³ΠΎ.

Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ β€” Π½Π°Π·Π²Π°Π½ΠΈΠ΅ появившСгося ΠΎΠΊΠ½Π°, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²ΠΈΠ΄ΠΈΡ‚ Π² интСрфСйсС.

Π Π°Π·ΠΌΠ΅Ρ€ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° β€” ΡˆΠΈΡ€ΠΈΠ½Π° ΠΎΠΊΠ½Π° Π² интСрфСйсС: МалСнький, Π‘Ρ€Π΅Π΄Π½ΠΈΠΉ, Π‘ΠΎΠ»ΡŒΡˆΠΎΠΉ, На вСсь экран.

Π£Π΄Π°Π»ΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ ΠΏΡ€ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ β€” ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΎΠΊΠ½Π΅ послС Π΅Π³ΠΎ закрытия. Π­Ρ‚Π° настройка позволяСт ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ Π² Π½Π΅ΠΌ. НапримСр, Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ Π² ΠΎΠΊΠ½Π΅ список Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π’ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ эту ΠΎΠΏΡ†ΠΈΡŽ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ ΠΈΠ»ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ Π·Π°Π΄Π°Ρ‡ всС измСнСния появлялись Π² этом ΠΎΠΊΠ½Π΅.

ДСйствиС ΠΏΡ€ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ β€” Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π·Π°Π΄Π°Ρ‚ΡŒ дСйствиС, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ выполнится, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π·Π°ΠΊΡ€ΠΎΠ΅Ρ‚ ΠΎΠΊΠ½ΠΎ.

Π’ΠΊΠ»Π°Π΄ΠΊΠΈ Β«Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅Β», «Бобытия», «БистСмныС» ΠΈ Β«ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅Β»

Настройки Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΠ°Ρ… Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅, Бобытия, БистСмныС ΠΈ ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ настройкам ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Колонка. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎ Π½ΠΈΡ… Ρ‡ΠΈΡ‚Π°ΠΉΡ‚Π΅ Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅ «Колонка».

Π’Π²Π΅Π΄Ρ‘Π½Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ Π² настройках ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ΡΡ автоматичСски. Если Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ измСнСния, Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠžΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ послСдниС измСнСния. Π’ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ этой ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠΊΠ° ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎ ΠΎΠΊΠ½ΠΎ настроСк.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ настройки, сохранитС Ρ„ΠΎΡ€ΠΌΡƒ ΠΈΠ»ΠΈ сохранитС ΠΈ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠΉΡ‚Π΅ страницу, ΠΏΠΎΡ€Ρ‚Π»Π΅Ρ‚ ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ .

slide-out-panel.html tooltip.html

Нашли ΠΎΠΏΠ΅Ρ‡Π°Ρ‚ΠΊΡƒ? Π’Ρ‹Π΄Π΅Π»ΠΈΡ‚Π΅ тСкст, Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ctrl + enter ΠΈ оповСститС нас

ΠœΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠΊΠ½Π° | Disnake Guide

ΠœΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠΊΠ½Π° — это Ρ‚ΠΎ, ΠΊΠ°ΠΊ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Ρ‚ΡŒ Ρƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅. Они Π΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‚ ΠΊΠ°ΠΊ встроСнныС Π² ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ ΠΎΠΊΠ½Π° ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π² ΠΏΠ°Ρ€Π΅ с ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΌΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΌΠΈ тСкстовыми полями. Π­Ρ‚ΠΈ Π²Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρ‹ для ΠΏΡ€ΠΈΠ΅ΠΌΠ° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΏΠΎ запросу ΠΈ использования ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ Π²Ρ‹Π·ΠΎΠ²Π° для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ этой ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ.

Π’ этом Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ рассказываСтся ΠΎΠ± использовании ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠΊΠΎΠ½ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΌΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ ΠΈ Ρ€Π΅Π°Π³ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π½Π° взаимодСйствиС с Π½ΠΈΠΌΠΈ.

ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ модального окна​

Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ модальноС ΠΎΠΊΠ½ΠΎ. ΠœΡ‹ рассмотрим Π΅Π³ΠΎ построСниС Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ части этой ΡΡ‚Π°Ρ‚ΡŒΠΈ.

Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²Π²Π΅Π΄Π΅Ρ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π² модальноС ΠΎΠΊΠ½ΠΎ, Π±ΠΎΡ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ эти Π΄Π°Π½Π½Ρ‹Π΅. Π’ качСствС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° эта информация Π±Ρ‹Π»Π° прСдставлСна Π²ΠΎ вставкС Π½ΠΈΠΆΠ΅.


Disnake BotBot05/16/2023

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Ρ‚Π΅Π³Π°

НазваниС

Π­Ρ‚ΠΎ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Ρ‚Π΅Π³Π°.

ОписаниС

Π­Ρ‚ΠΎ описаниС Ρ‚Π΅Π³Π°. Π—Π΄Π΅ΡΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π΄ΠΎ 4000 символов.

Π­Ρ‚ΠΎ Π±Ρ‹Π»ΠΎ сдСлано с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΊΠΎΠ΄Π°.

modals.py

import disnake
from disnake.ext import commands
from disnake import TextInputStyle

# НаслСдуСм модальноС ΠΎΠΊΠ½ΠΎ
class MyModal(disnake.ui.Modal):
def __init__(self):
# Π”Π΅Ρ‚Π°Π»ΠΈ модального ΠΎΠΊΠ½Π° ΠΈ Π΅Π³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ²
components = [
disnake.ui.TextInput(
label="Name",
placeholder="Foo Tag",
custom_id="Π½Π°Π·Π²Π°Π½ΠΈΠ΅",
style=TextInputStyle.short,
max_length=50,
),
disnake.ui.TextInput(
label="Description",
placeholder="Lorem ipsum dolor sit amet.",
custom_id="описаниС",
style=TextInputStyle.paragraph,
),
]
super().__init__(
title="Create Tag",
custom_id="create_tag",
components=components,
)

# ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΎΡ‚Π²Π΅Ρ‚Π°, послС ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ модального ΠΎΠΊΠ½Π°

async def callback(self, inter: disnake.ModalInteraction):
embed = disnake.Embed(title="Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Ρ‚Π΅Π³Π°")
for key, value in inter.text_values.items():
embed.add_field(
name=key. capitalize(),
value=value[:1024],
inline=False,
)
await inter.response.send_message(embed=embed)

bot = commands.Bot(command_prefix="!")

@bot.slash_command()
async def tags(inter: disnake.AppCmdInter):
"""ΠžΡ‚ΠΏΡ€Π°Π²Π»ΡΠ΅Ρ‚ модальноС ΠΎΠΊΠ½ΠΎ для создания Ρ‚Π΅Π³Π°"""
await inter.response.send_modal(modal=MyModal())

bot.run("YOUR_BOT_TOKEN")

Π Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ этой ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ с использованиСм интСрфСйса Π±ΠΎΠ»Π΅Π΅ Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ уровня ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ здСсь.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ модального окна​

МодальноС ΠΎΠΊΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ создано ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²Π»Π΅Π½ΠΎ двумя Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ, ΠΊΠ°ΠΊ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ сообщСний:

  • НаслСдованиС класса ΠΎΡ‚ disnake.ui.Modal для опрСдСлСния ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ° Π΅Π³ΠΎ Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ modal Π² interaction.send_modal (ΠΊΠ°ΠΊ это сдСлано Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π²Ρ‹ΡˆΠ΅).
  • ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ² ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² модального ΠΎΠΊΠ½Π° Π²Π½ΡƒΡ‚Ρ€ΠΈ interaction.send_modal. Π­Ρ‚ΠΎ считаСтся Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠΊΠΎΠ½ «Π±ΠΎΠ»Π΅Π΅ Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ уровня» — ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΡ‚ ΠΆΠ΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ для обозначСния этого Π² этой Ρ€Π°Π·Π΄Π΅Π»Π΅.

ΠžΠ±ΡŠΠ΅ΠΊΡ‚ disnake.ui.Modal ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹:

  • title — Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ модального ΠΎΠΊΠ½Π°.
  • custom_id — ID, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ для модального ΠΎΠΊΠ½Π°. К Π½Π΅ΠΌΡƒ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ Ρ‡Π΅Ρ€Π΅Π· ModalInteraction.
  • timeout — ВрСмя (Π² сСкундах), ΠΏΠΎ ΠΈΡΡ‚Π΅Ρ‡Π΅Π½ΠΈΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ модальноС ΠΎΠΊΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ΄Π°Π»Π΅Π½ΠΎ ΠΈΠ· кэша. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ — 600 сСкунд.
  • components — Бписок ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ Π² модальном ΠΎΠΊΠ½Π΅. ΠœΠ°ΠΊΡΠΈΠΌΡƒΠΌ 5 ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ².

ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅

ΠœΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠΊΠ½Π° Π±Π΅Π· Ρ‚Π°ΠΉΠΌΠ°ΡƒΡ‚ΠΎΠ² Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ. ΠŸΡ€ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ модального ΠΎΠΊΠ½Π° Π½ΠΈΠΊΠ°ΠΊΠΈΡ… событий Π½Π΅ отправляСтся, ΠΈ, ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, модальноС ΠΎΠΊΠ½ΠΎ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ΄Π°Π»Π΅Π½ΠΎ ΠΈΠ· кэша Π±Π΅Π· Ρ‚Π°ΠΉΠΌΠ°ΡƒΡ‚Π°.

Π­Ρ‚ΠΈ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ создании модального ΠΎΠΊΠ½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ.

modals.py

# НаслСдуСм модальноС ΠΎΠΊΠ½ΠΎ.
class MyModal(disnake.ui.Modal):
def __init__(self):
super(). __init__(
title="Modal Title",
custom_id="modal_id",
timeout=300,
components=[...],
)

# Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Π½ΠΈΠ·ΠΊΠΎ ΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹ΠΉ интСрфСйс. (Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ)
await inter.response.send_modal(
title="Modal Title",
custom_id="modal_id",
components=[...],

)

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅

РСкомСндуСтся псСвдослучайно ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ ΠΌΠΎΠ΄Π°Π»ΡŒΠ½ΠΎΠΌΡƒ ΠΎΠΊΠ½Ρƒ custom_id, сохранив Π² Π½Π΅ΠΌ ID взаимодСйствия. ΠŸΡ€ΠΈΡ‡ΠΈΠ½Π° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ модальноС ΠΎΠΊΠ½ΠΎ, Π½Π΅ вызывая события, ΠΈ снова ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Π΅Π³ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ‚ΠΎΠΉ ΠΆΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. Π’ Ρ‚Π°ΠΊΠΈΡ… случаях wait_for для старого модального ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ Π±ΡƒΠ΄Π΅Ρ‚ Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΌ, Ρ‡Ρ‚ΠΎ Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΠ±Π΅ΠΈΡ… ΠΊΠΎΠΌΠ°Π½Π΄.

Π’ Π½ΠΈΠ·ΠΊΠΎ ΡƒΡ€ΠΎΠ²Π½Π΅Π²ΠΎΠΌ интСрфСйсС Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ это ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

modals.py

- custom_id="create_tag_low",
+ custom_id=f"create_tag_low-{inter.id}",

% Π² wait_for
- check=lambda i: i.custom_id == "create_tag_low" and i.author.id == inter.author.id,
+ check=lambda i: i. custom_id == f"create_tag_low-{inter.id}",

ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ тСкстового Π²Π²ΠΎΠ΄Π° (

TextInput)​

TextInput являСтся ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠΌ, Ρ‚Π°ΠΊΠΈΠΌ ΠΊΠ°ΠΊ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈ мСню Π²Ρ‹Π±ΠΎΡ€Π°. Он ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π·Π° ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π° Π² Π²ΠΈΠ΄Π΅ тСкста ΠΈ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π²Π½Π΅ ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠΊΠΎΠ½. Он ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹:

  • label — НазваниС поля тСкстового Π²Π²ΠΎΠ΄Π°.
  • custom_id — ID поля тСкстового Π²Π²ΠΎΠ΄Π°.
  • style — Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· стилСй TextInputStyle для ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ short.
  • placeholder — Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ отобраТаСтся, Ссли Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π²Π²Π΅Π΄Π΅Π½ΠΎ.
  • value — ΠŸΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ для Π²Π²ΠΎΠ΄Π° тСкста (максимальная Π΄Π»ΠΈΠ½Π° — max_length).
  • required — ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π»ΠΈ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ тСкста. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ — True.
  • min_length ΠΈ max_length — Π£ΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ Π΄Π»ΠΈΠ½Ρƒ Π²Π²ΠΎΠ΄Π° соотвСтствСнно.

Π­Ρ‚ΠΈ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° TextInput ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ.

textinput.py

disnake.ui.TextInput(
label="Name",
placeholder="Foo Tag",
custom_id="name",
style=TextInputStyle.short,
max_length=50,
)

TextInputStyle ΠΈΠΌΠ΅Π΅Ρ‚ 2 стиля, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ мноТСство синонимов:

  • short — ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΠ΅Ρ‚ однострочный ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Π²Π²ΠΎΠ΄Π°. Π’Π°ΠΊΠΆΠ΅ называСтся single_line.
  • long — ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΠ΅Ρ‚ многострочный ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Π²Π²ΠΎΠ΄Π°. Π’Π°ΠΊΠΆΠ΅ называСтся multi_line ΠΈΠ»ΠΈ paragraph.

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ получСния ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹Ρ… окон​

callback()​

Он ссылаСтся Π½Π° ΠΎΡ‚Π²Π΅Ρ‚, связанный с ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΎΠΊΠ½Π°ΠΌΠΈ ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ModalInteraction, содСрТащий значСния, Π²Π²Π΅Π΄Ρ‘Π½Π½Ρ‹Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ. Он наслСдуСтся, позволяя Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΡƒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ дСйствиС, выполняСмоС с ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΌ ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠΌ ΠΈΠ· модального ΠΎΠΊΠ½Π°.

modals.py

class MyModal(disnake.ui.Modal):
def __init__(self):
super().__init__(...)

async def callback(self, inter: disnake.ModalInteraction):
await inter.response.send_message("ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ Π²Π²ΠΎΠ΄ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½!")

Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ интСрфСйс Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ уровня для ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠΊΠΎΠ½, Π²Π°ΠΌ придСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ событиС/ΠΏΡ€ΠΎΡΠ»ΡƒΡˆΠΈΠ²Π°Ρ‚Π΅Π»ΡŒ для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ID ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ ΠΎΡ‚Π²Π΅Ρ‚Π° Π½Π° взаимодСйствиС. Для этой Ρ†Π΅Π»ΠΈ сущСствуСт событиС on_modal_submit.

modals.py

@bot.slash_command()
async def tags(inter: disnake.ApplicationCommandInteraction):
...
await inter.response.send_modal(..., custom_id="modal_custom_id")

...

@bot.event()
async def on_modal_submit(inter: disnake.ModalInteraction):

if inter.custom_id == "modal_custom_id":
await do_stuff_here()

Π’ качСтсвС Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ bot.wait_for() для этой Ρ†Π΅Π»ΠΈ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹.

modals.py

@bot.slash_command()
async def tags(inter: disnake. ApplicationCommandInteraction):
...
await inter.response.send_modal(..., custom_id="modal_custom_id")

modal_inter: disnake.ModalInteraction = await bot.wait_for(
"modal_submit",
check=lambda i: i.custom_id == "modal_custom_id" and i.author.id == inter.author.id,
timeout=300,
)

on_error()​

ВыполняСтся, ΠΊΠΎΠ³Π΄Π° ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ° модального ΠΎΠΊΠ½Π° Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΎΡˆΠΈΠ±ΠΊΡƒ. Он Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΎΡˆΠΈΠ±ΠΊΡƒ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ModalInteraction, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ. РСализация ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ ΠΎΡˆΠΈΠ±ΠΊΡƒ Π² sdterr.

modals.py

class MyModal(disnake.ui.Modal):
def __init__(self):
super().__init__(...)

async def on_error(self, error: Exception, inter: disnake.ModalInteraction):
await inter.response.send_message(f"ΠŸΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»Π° ошибка!\n```{error}```")

on_timeout()​

ВызываСтся, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π΅ ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π΄ΠΎ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ Ρ‚Π°ΠΉΠΌΠ°ΡƒΡ‚Π°; ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ модального ΠΎΠΊΠ½Π° удаляСтся ΠΈΠ· кэша Π±Π΅Π· выполнСния взаимодСйствия.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅

Ни ΠΎΠ΄ΠΈΠ½ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ взаимодСйствия Π½Π΅ пСрСдаСтся ΠΌΠ΅Ρ‚ΠΎΠ΄Ρƒ on_timeout(). Он Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ для Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΡβ€‹

  • ΠšΠΎΠΌΠΏΠΎΠ½Π΅Ρ‚ TextInput — СдинствСнный ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠΊΠ½Π°Ρ…. Кнопки ΠΈ мСню Π²Ρ‹Π±ΠΎΡ€Π° Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π²Π½ΡƒΡ‚Ρ€ΠΈ модального ΠΎΠΊΠ½Π°.
  • Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ disnake.ui.Modal, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ append_component(). Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ тСкстового Π²Π²ΠΎΠ΄Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ add_text_input().
  • Если ΡΡ‚ΠΈΠ»ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° тСкстового Π²Π²ΠΎΠ΄Π° Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ short.
  • По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ всС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ TextInput ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ ΠΊ заполнСнию.

Лимиты​

БущСствуСт нСсколько ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ, ΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… слСдуСт ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈ использовании ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠΊΠΎΠ½ ΠΈΠ·-Π·Π° ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ API. Π’ΠΎΡ‚ ΠΊΡ€Π°Ρ‚ΠΊΠΈΠΉ список ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ:

  • МодальноС ΠΎΠΊΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π΄ΠΎ 5 ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ².
  • title модального ΠΎΠΊΠ½Π° ΠΈΠΌΠ΅Π΅Ρ‚ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ Π΄Π»ΠΈΠ½Ρƒ Π² 45 символов.
  • label тСкстового поля ΠΈΠΌΠ΅Π΅Ρ‚ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ Π΄Π»ΠΈΠ½Ρƒ Π² 45 символов.
  • placeholder тСкстового поля ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ 100 символами.
  • custom_id модального ΠΎΠΊΠ½Π° ΠΈ тСкстового поля ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ 100 символами.
  • Π—Π°Ρ€Π°Π½Π΅Π΅ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π½ΠΎΠ΅ value тСкстового поля ΠΈΠΌΠ΅Π΅Ρ‚ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ Π΄Π»ΠΈΠ½Ρƒ 4000 символов (ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ).
  • МинимальноС ΠΈ максимальноС значСния для тСкстового поля ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ установлСны Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ 0-4000 символов ΠΈ 1-4000 символов соотвСтствСнно.

ΠŸΠΎΠ»ΡƒΡ‡ΠΈΠ²ΡˆΠΈΠΉΡΡ код​

Код, прСдставлСнный Π½Π° этой страницС, ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π² нашСм Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ GitHub здСсь.

Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΏΠΎ ΠΌΠΎΠ΄Π°Π»ΡŒΠ½ΠΎΠΌΡƒ/Π½Π΅ΠΌΠΎΠ΄Π°Π»ΡŒΠ½ΠΎΠΌΡƒ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΌΡƒ ΠΎΠΊΠ½Ρƒ MFC ΠΈ ΡƒΡ‡Π΅Π±Π½ΠΎΠΌΡƒ пособию ΠΏΠΎ ΠΎΠ±Ρ‰ΠΈΠΌ элСмСнтам управлСния Windows с использованиСм Visual C++-Module 5 0009

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, скомпилированныС с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ компилятора Visual C++ 6. 0 (MFC 6.0) Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ ΠΏΠΎΠ΄ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Windows XP Pro с ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠΌ обновлСния 2. Π’Π΅ΠΌΡ‹ ΠΈ ΠΏΠΎΠ΄Ρ‚Π΅ΠΌΡ‹ этого руководства пСрСчислСны Π½ΠΈΠΆΠ΅:

Β 

Β 

ΠœΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹ΠΉ Π΄ΠΈΠ°Π»ΠΎΠ³ ΠΈ ΠžΠ±Ρ‰ΠΈΠ΅ элСмСнты управлСния Windows

Β 

ΠŸΠΎΡ‡Ρ‚ΠΈ каТдая ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π° Π±Π°Π·Π΅ Windows ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ для взаимодСйствия с ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ. Π”ΠΈΠ°Π»ΠΎΠ³ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ простым Окно сообщСния OK , ΠΈΠ»ΠΈ ΠΎΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ слоТной Ρ„ΠΎΡ€ΠΌΠΎΠΉ Π²Π²ΠΎΠ΄Π° Π΄Π°Π½Π½Ρ‹Ρ…. Π’Ρ‹Π·ΠΎΠ² этого ΠΌΠΎΡ‰Π½ΠΎΠ³ΠΎ элСмСнта Π΄ΠΈΠ°Π»ΠΎΠ³Π° «ΠΊΠΎΡ€ΠΎΠ±ΠΊΠ°» — Π½Π΅ΡΠΏΡ€Π°Π²Π΅Π΄Π»ΠΈΠ²ΠΎΡΡ‚ΡŒ. Π”ΠΈΠ°Π»ΠΎΠ³ β€” это Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠΊΠ½ΠΎ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ сообщСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ ΠΈ Π·Π°ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ, ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π΄Π°ΠΆΠ΅ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ инструкции ΠΏΠΎ Ρ€ΠΈΡΠΎΠ²Π°Π½ΠΈΡŽ Π² своСй клиСнтской Π·ΠΎΠ½Π΅. Π”Π²Π° Π²ΠΈΠ΄Π° Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ² ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΈ Π½Π΅ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹ΠΉ .

Β 

ΠœΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΈ Π½Π΅ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹Π΅ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΈ

Β 

CD-Π΄ΠΈΠ°Π»ΠΎΠ³ Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ класс ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹Π΅, Ρ‚Π°ΠΊ ΠΈ Π½Π΅ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹Π΅ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΈ. Π‘ ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹ΠΉ Π΄ΠΈΠ°Π»ΠΎΠ³ , Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ Π”ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ Β«ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Β» , ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² Π΄Ρ€ΡƒΠ³ΠΎΠΌ мСстС Π² Ρ‚ΠΎΠΌ ΠΆΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ, Π² ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ ΠΏΠΎΡ‚ΠΎΠΊ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса, ΠΏΠΎΠΊΠ° Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΎ. Π‘ Π½Π΅ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹ΠΉ Π΄ΠΈΠ°Π»ΠΎΠ³ , ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² Π΄Ρ€ΡƒΠ³ΠΎΠΌ ΠΎΠΊΠ½Π΅ прилоТСния, ΠΏΠΎΠΊΠ° остаСтся Π΄ΠΈΠ°Π»ΠΎΠ³ Π½Π° экранС. Microsoft Word Найти Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ Β«Π—Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Β» β€” Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ нСмодального Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π°; Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ свой Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚, ΠΏΠΎΠΊΠ° Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎ. Π’Π°Ρˆ Π²Ρ‹Π±ΠΎΡ€ ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ»ΠΈ Π½Π΅ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹ΠΉ Π΄ΠΈΠ°Π»ΠΎΠ³ зависит ΠΎΡ‚ прилоТСния. ΠœΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹Π΅ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΈ ΠΈΡ… Π³ΠΎΡ€Π°Π·Π΄ΠΎ ΠΏΡ€ΠΎΡ‰Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ²Π»ΠΈΡΡ‚ΡŒ Π½Π° вашС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅.

Β 

РСсурсы ΠΈ срСдства управлСния

Β 

Π˜Ρ‚Π°ΠΊ, Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅, Ρ‡Ρ‚ΠΎ Π΄ΠΈΠ°Π»ΠΎΠ³ β€” это просто ΠΎΠΊΠ½ΠΎ. Π§Π΅ΠΌ Π΄ΠΈΠ°Π»ΠΎΠ³ отличаСтся ΠΎΡ‚ CView ΠΎΠΊΠ½Π° Π²Ρ‹ ΡƒΠΆΠ΅ Π²ΠΈΠ΄Π΅Π»ΠΈ? Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ ΠΏΠΎΡ‡Ρ‚ΠΈ всСгда привязан ΠΊ рСсурсу Windows, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠ΅Ρ‚ элСмСнты Π΄ΠΈΠ°Π»ΠΎΠ³Π° ΠΈ опрСдСляСт ΠΈΡ… располоТСниС. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ являСтся ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ² рСсурсов для создания ΠΈ рСдактирования Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ рСсурса, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ быстро ΠΈ эффСктивно ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΈ Π² Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅.

Π”ΠΈΠ°Π»ΠΎΠ³ содСрТит ряд элСмСнтов, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… управляСт . Π”ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ элСмСнты управлСния Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ (Ρ‚Π°ΠΊΠΆΠ΅ извСстныС ΠΊΠ°ΠΊ тСкстовыС поля), ΠΊΠ½ΠΎΠΏΠΊΠΈ, списки, поля со списком, статичСский тСкст (Ρ‚Π°ΠΊΠΆΠ΅ извСстный ΠΊΠ°ΠΊ ΠΌΠ΅Ρ‚ΠΊΠΈ), Π΄Ρ€Π΅Π²ΠΎΠ²ΠΈΠ΄Π½Ρ‹Π΅ прСдставлСния, ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ выполнСния, ΠΏΠΎΠ»Π·ΡƒΠ½ΠΊΠΈ, ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅. Windows управляСт этими элСмСнтами управлСния с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° . Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΈ Π²ΠΊΠ»Π°Π΄ΠΊΠ° Π»ΠΎΠ³ΠΈΠΊΠ° ΠΈ это ΠΎΠ±Π»Π΅Π³Ρ‡Π°Π΅Ρ‚ Π²Π°ΠΌ большоС брСмя программирования. На Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²Ρ‹Π΅ элСмСнты управлСния ΠΌΠΎΠΆΠ½ΠΎ ΡΡΡ‹Π»Π°Ρ‚ΡŒΡΡ Π»ΠΈΠ±ΠΎ Ρ‡Π΅Ρ€Π΅Π· CWnd ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ (ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Π½Π° самом Π΄Π΅Π»Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΠΊΠ½Π°ΠΌΠΈ) ΠΈΠ»ΠΈ ΠΏΠΎ порядковому Π½ΠΎΠΌΠ΅Ρ€Ρƒ (с связанный #ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ константа), назначСнная Π² рСсурсС. Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ управлСния отправляСт сообщСниС своСму Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ Π΄ΠΈΠ°Π»ΠΎΠ³ Π² ΠΎΡ‚Π²Π΅Ρ‚ Π½Π° дСйствиС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠ°ΠΊ Π²Π²ΠΎΠ΄ тСкста ΠΈΠ»ΠΈ Ρ‰Π΅Π»Ρ‡ΠΎΠΊ ΠΊΠ½ΠΎΠΏΠΊΠ°.

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° MFC ΠΈ ClassWizard Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ вмСстС для ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠΈ, прСдоставляСмой Windows. ClassWizard Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ класс, ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹ΠΉ ΠΎΡ‚ CD-Π΄ΠΈΠ°Π»ΠΎΠ³ Π° Π·Π°Ρ‚Π΅ΠΌ позволяСт ΡΠ²ΡΠ·Π°Ρ‚ΡŒ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²Ρ‹ΠΉ класс элСмСнты Π΄Π°Π½Π½Ρ‹Ρ… с Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²Ρ‹ΠΌΠΈ элСмСнтами управлСния. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ рСдактирования, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ максимальная Π΄Π»ΠΈΠ½Π° тСкста ΠΈ числовоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. высокиС ΠΈ Π½ΠΈΠ·ΠΊΠΈΠ΅ ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹. ClassWizard Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‚ ОбмСн Π΄Π°Π½Π½Ρ‹ΠΌΠΈ MFC ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ для пСрСмСщСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π½Π°Π·Π°Π΄ ΠΈ Π²ΠΏΠ΅Ρ€Π΅Π΄ ΠΌΠ΅ΠΆΠ΄Ρƒ экраном ΠΈ элСмСнтами Π΄Π°Π½Π½Ρ‹Ρ….

Β 

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ модального Π΄ΠΈΠ°Π»ΠΎΠ³Π°

Β 

ΠœΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹Π΅ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΌΠΈ Π΄ΠΈΠ°Π»ΠΎΠ³Π°ΠΌΠΈ. ДСйствиС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π²Ρ‹Π±ΠΎΡ€ мСню) Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ Π½Π° экранС, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²Π²ΠΎΠ΄ΠΈΡ‚ Π΄Π°Π½Π½Ρ‹Π΅ Π² Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π·Π°ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ. Π’ΠΎΡ‚ сводка шагов ΠΏΠΎ добавлСнию модального Π΄ΠΈΠ°Π»ΠΎΠ³Π° Π² ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚:

Β 

  1. ИспользованиС Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²Ρ‹ΠΉ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ для создания Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ рСсурса, содСрТащСго Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ элСмСнты управлСния. Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ² обновляСт Ρ„Π°ΠΉΠ» сцСнария рСсурсов ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° (RC), Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ваш Π½ΠΎΠ²Ρ‹ΠΉ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²Ρ‹ΠΉ рСсурс, ΠΈ ΠΎΠ½ обновляСт ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Ρ„Π°ΠΉΠ» resource.h с ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ #ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ константы.

  2. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ClassWizard для создания класса Π΄ΠΈΠ°Π»ΠΎΠ³Π°, ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΎΡ‚ CD-Π΄ΠΈΠ°Π»ΠΎΠ³ ΠΈ прикрСпляСтся ΠΊ рСсурсу, созданному Π½Π° шагС 1. ClassWizard добавляСт связанный ΠΊΠΎΠ΄ ΠΈ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Microsoft Visual C++.

Β 

Когда ClassWizard создаСт ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹ΠΉ класс Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π°, ΠΎΠ½ создаСт конструктор, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ CD-Π΄ΠΈΠ°Π»ΠΎΠ³ ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹ΠΉ конструктор, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ рСсурса Π² качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°. Π‘Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° содСрТит константу IDD пСрСчислитСля класса, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π·Π°Π΄Π°Π½ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ рСсурса Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π°. Π’ Ρ„Π°ΠΉΠ»Π΅ CPP рСализация конструктора выглядит ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊ:

Β 

CMyDialog::CMyDialog(CWnd* pParent /*=НУЛЬ*/) : CDialog(CMyDialog::IDD, pParent)

{

// здСсь ΠΊΠΎΠ΄ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ

}

Β 

ИспользованиС enum IDD отдСляСт Ρ„Π°ΠΉΠ» CPP ΠΎΡ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² рСсурсов, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Π² Ρ„Π°ΠΉΠ»Π΅ resource. h ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

Β 

  1. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ClassWizard для добавлСния элСмСнтов Π΄Π°Π½Π½Ρ‹Ρ…, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΎΠ±ΠΌΠ΅Π½Π° ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π² класс Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π°.

  2. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ClassWizard, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ сообщСний для ΠΊΠ½ΠΎΠΏΠΎΠΊ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… элСмСнтов управлСния, Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… события.

  3. ΠΠ°ΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΊΠΎΠ΄ для ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ управлСния (Π² OnInitDialog()) ΠΈ для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² сообщСний. Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ CD-Π΄ΠΈΠ°Π»ΠΎΠ³ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Π°Ρ функция-Ρ‡Π»Π΅Π½ Π’ΠΊΠ»ΠžΠš() вызываСтся, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π·Π°ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ, Ссли ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π΅ отмСняСт Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ). Π’ΠΊΠ»ΠžΠš() вызываСтся ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.

  4. ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π² вашСм классС прСдставлСния, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄ΠΈΠ°Π»ΠΎΠ³. Π­Ρ‚ΠΎΡ‚ ΠΊΠΎΠ΄ состоит ΠΈΠ· Π²Ρ‹Π·ΠΎΠ² конструктора вашСго Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ класса, Π·Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ слСдуСт Π²Ρ‹Π·ΠΎΠ² DoModal() функция-Ρ‡Π»Π΅Π½ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ класса. DoModal() возвращаСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΈΠ· Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π°.

Β 

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Π΅ΠΌ ΠΊ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌΡƒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, шаг Π·Π° шагом.

Β 

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° MYMFC7

Β 

Π”Π°Π²Π°ΠΉΡ‚Π΅ Π½Π΅ Π±ΡƒΠ΄Π΅ΠΌ Π²ΠΎΠ·ΠΈΡ‚ΡŒΡΡ со слабыми малСнькими Π΄ΠΈΠ°Π»ΠΎΠ³Π°ΠΌΠΈ. ΠœΡ‹ создадим Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ монстра, содСрТащСС ΠΏΠΎΡ‡Ρ‚ΠΈ всС Π²ΠΈΠ΄Ρ‹ элСмСнтов управлСния. Π Π°Π±ΠΎΡ‚Π° Π±ΡƒΠ΄Π΅Ρ‚ Π»Π΅Π³ΠΊΠΎΠΉ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²Ρ‹ΠΉ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ Visual C++ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°ΠΌ. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ ΠΏΠΎΠΊΠ°Π·Π°Π½ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ рисункС.

Β 

Рисунок 1: Π“ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ Π΄ΠΈΠ°Π»ΠΎΠ³ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° MYMFC7.

Β 

Как Π²ΠΈΠ΄ΠΈΡ‚Π΅, Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ с пСрсоналом. ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Π’Π°ΠΊΠΎΠ³ΠΎ Ρ€ΠΎΠ΄Π° бизнСс-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ довольно скучны, поэтому Π·Π°Π΄Π°Ρ‡Π° Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ произвСсти Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ, Ρ‡Π΅Π³ΠΎ нСльзя Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ с 80-ΠΊΠΎΠ»ΠΎΠ½Π½ΠΎΠΉ ΠΏΠ΅Ρ€Ρ„ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ ΠΊΠ°Ρ€Ρ‚Ρ‹. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠΆΠΈΠ²Π»Π΅Π½Π° ​​за счСт использования элСмСнтов управлСния полосой ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠΈ. для Β« Π›ΠΎΡΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ Β» ΠΈ Β« ΠΠ°Π΄Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ Β». Π’ΠΎΡ‚ классичСский ΠΏΡ€ΠΈΠΌΠ΅Ρ€ прямого дСйствия ΠΈ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ прСдставлСния Π΄Π°Π½Π½Ρ‹Ρ…! ПозТС элСмСнты управлСния ActiveX ΠΌΠΎΠ³ΡƒΡ‚ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ большС интСрСса.

Β 

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ рСсурса

Β 

Π’ΠΎΡ‚ шаги для создания Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ рСсурса:

Β 

ЗапуститС AppWizard, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ MYMFC7. Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Новый ΠΈΠ· Π’ мСню File Visual C++ Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Π²ΠΊΠ»Π°Π΄ΠΊΡƒ Projects ΠΈ Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ MFC AppWizard (exe) . ΠŸΡ€ΠΈΠΌΠΈΡ‚Π΅ всС значСния ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, ΠΊΡ€ΠΎΠΌΠ΅ Π΄Π²ΡƒΡ…: Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ . Один Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ ΠΈ ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π²Ρ‹Π±ΠΎΡ€ ΠŸΠ΅Ρ‡Π°Ρ‚ΡŒ ΠΈ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ просмотр . Π—Π΄Π΅ΡΡŒ ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ‹ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΈ ΠΈΠΌΠ΅Π½Π° классов ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.

Β 

Β 

Рисунок 2: РСзюмС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° MYMFC7.

Β 

Как ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ, AppWizard устанавливаСт Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π² качСствС Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

Β 

Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ Π½ΠΎΠ²Ρ‹ΠΉ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²Ρ‹ΠΉ рСсурс с ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ IDD_DIALOG1 (ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ). Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ РСсурс ΠΈΠ· мСню Visual C++ Insert . ΠŸΠΎΡΠ²ΠΈΡ‚ΡΡ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ Π’ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ рСсурс . НаТмитС Π½Π° Π”ΠΈΠ°Π»ΠΎΠ³ , Π° Π·Π°Ρ‚Π΅ΠΌ Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ Новый . Visual C++ создаСт Π½ΠΎΠ²Ρ‹ΠΉ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²Ρ‹ΠΉ рСсурс, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ здСсь.

Β 

Β 

Рисунок 3: Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ рСсурса Ρ‡Π΅Ρ€Π΅Π· мСню Insert .

Β 

Β 

Рисунок 4: Вставка Π½ΠΎΠ²ΠΎΠ³ΠΎ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ рСсурса.

Β 

Β 

Β 

Β 

Β 

Рисунок 5: Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²Ρ‹Ρ… рСсурсов.

Β 

Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ² Π½Π°Π·Π½Π°Ρ‡Π°Π΅Ρ‚ рСсурс ID IDD_DIALOG1 ΠΊ Π½ΠΎΠ²ΠΎΠΌΡƒ Π΄ΠΈΠ°Π»ΠΎΠ³Ρƒ. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° вставляСт ОК ΠΈ Кнопки Cancel для Π½ΠΎΠ²ΠΎΠ³ΠΎ Π΄ΠΈΠ°Π»ΠΎΠ³Π°.

Β 

Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚Π΅ Ρ€Π°Π·ΠΌΠ΅Ρ€ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° ΠΈ Π½Π°Π·Π½Π°Ρ‡ΡŒΡ‚Π΅ Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ MyDialog. Π£Π²Π΅Π»ΠΈΡ‡ΡŒΡ‚Π΅ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Π΄ΠΎ 5 Π½Π° 7 дюймов.

Когда Π²Ρ‹ Ρ‰Π΅Π»ΠΊΠ°Π΅Ρ‚Π΅ ΠΏΡ€Π°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡ‹ΡˆΠΈ ΠΏΠΎ Π½ΠΎΠ²ΠΎΠΌΡƒ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΌΡƒ ΠΎΠΊΠ½Ρƒ ΠΈ Π²Ρ‹Π±ΠΈΡ€Π°Π΅Ρ‚Π΅ Бвойства ΠΈΠ· Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎ мСню, появится Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ Бвойства Π΄ΠΈΠ°Π»ΠΎΠ³Π° . Π’Π²Π΅Π΄ΠΈΡ‚Π΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ для Π½ΠΎΠ²ΠΎΠ³ΠΎ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π°, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° экранС Π½ΠΈΠΆΠ΅.

Β 

Β 

Рисунок 6: Бвойства Π΄ΠΈΠ°Π»ΠΎΠ³Π°.

Β 

БостояниС Кнопка канцСлярской ΠΊΠ½ΠΎΠΏΠΊΠΈ Π² Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ Π»Π΅Π²ΠΎΠΌ ΡƒΠ³Π»Ρƒ опрСдСляСт, Π±ΡƒΠ΄Π΅Ρ‚ Π»ΠΈ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ Бвойства Π΄ΠΈΠ°Π»ΠΎΠ³Π° ΠΎΡΡ‚Π°Π²Π°Ρ‚ΡŒΡΡ ΠΏΠΎΠ²Π΅Ρ€Ρ… Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΎΠΊΠΎΠ½. Когда канцСлярская ΠΊΠ½ΠΎΠΏΠΊΠ° Β«Π½Π°ΠΆΠ°Ρ‚Π°Β», Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ остаСтся ΠΏΠΎΠ²Π΅Ρ€Ρ… Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΎΠΊΠΎΠ½.

Β 

Β 

Рис. 7. Кнопка-канцСлярская ΠΊΠ½ΠΎΠΏΠΊΠ°, ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π°Ρ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ «Бвойства» Π½Π°Π²Π΅Ρ€Ρ…Ρƒ.

Β 

НаТмитС ΠΊΠ½ΠΎΠΏΠΊΡƒ Toggle Grid (Π² Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΌ ΠΎΠΊΠ½Π΅ панСль инструмСнтов), Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ сСтку ΠΈ ΠΏΠΎΠΌΠΎΡ‡ΡŒ Π²Ρ‹Ρ€ΠΎΠ²Π½ΡΡ‚ΡŒ элСмСнты управлСния.

Β 

Β 

Рис. 8. Диалоговая сСтка, ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‰Π°Ρ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ элСмСнты управлСния Π² Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΌ ΠΎΠΊΠ½Π΅.

Β 

Рисунок 9: Π”ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ с сСткой.

Β 

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΡ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ свой Π΄ΠΈΠ°Π»ΠΎΠ³ Π½Π° этапС проСктирования, Ρ‰Π΅Π»ΠΊΠ½ΡƒΠ² ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΡŒ Test Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ инструмСнтов Dialog. 0047 .

Β 

Β 

Рис. 10: ΠŸΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΡŒ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° Test , ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° вашСго Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° Π² процСссС проСктирования.

Β 

АналогичныС ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ доступны Ρ‡Π΅Ρ€Π΅Π· мСню Layout .

Β 

Β 

Рис. 11. Доступ ΠΊ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²Ρ‹ΠΌ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π°ΠΌ рСдактирования Ρ‡Π΅Ρ€Π΅Π· мСню Β«ΠœΠ°ΠΊΠ΅Ρ‚Β».

Β 

УстановитС ΡΡ‚ΠΈΠ»ΡŒ Π΄ΠΈΠ°Π»ΠΎΠ³Π°. НаТмитС Π½Π° Π’ΠΊΠ»Π°Π΄ΠΊΠ° Styles Π² Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ части Dialog Properties , Π° Π·Π°Ρ‚Π΅ΠΌ Π·Π°Π΄Π°ΠΉΡ‚Π΅ свойства стиля, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ рисункС.

Β 

Β 

Рисунок 12: Установка стиля Π΄ΠΈΠ°Π»ΠΎΠ³Π°.

Β 

УстановитС Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ стили Π΄ΠΈΠ°Π»ΠΎΠ³Π°. НаТмитС Π½Π° Π’ΠΊΠ»Π°Π΄ΠΊΠ° Β«Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ стили Β» Π² Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ части Dialog Properties , Π° Π·Π°Ρ‚Π΅ΠΌ Π·Π°Π΄Π°ΠΉΡ‚Π΅ свойства стиля, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ здСсь.

Β 

Β 

Рисунок 13: Настройка Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… стилСй Π΄ΠΈΠ°Π»ΠΎΠ³Π°.

Β 

Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ элСмСнты управлСния Π΄ΠΈΠ°Π»ΠΎΠ³Π°. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΏΠ°Π»ΠΈΡ‚Ρ€Ρƒ элСмСнтов управлСния для добавлСния ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ элСмСнта управлСния. Если ΠΏΠ°Π»ΠΈΡ‚Ρ€Π° элСмСнтов управлСния Π½Π΅ отобраТаСтся, Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ ΠΏΡ€Π°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡ‹ΡˆΠΈ Π»ΡŽΠ±ΡƒΡŽ панСль инструмСнтов ΠΈ Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ управлСния ΠΈΠ· списка. ΠŸΠ΅Ρ€Π΅Ρ‚Π°Ρ‰ΠΈΡ‚Π΅ элСмСнты управлСния ΠΈΠ· ΠΏΠ°Π½Π΅Π»ΠΈ управлСния (ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½ΠΈΠΆΠ΅) Π² Π½ΠΎΠ²ΠΎΠ΅ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ, Π° Π·Π°Ρ‚Π΅ΠΌ располоТитС ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚Π΅ Ρ€Π°Π·ΠΌΠ΅Ρ€ элСмСнтов управлСния, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° рисункС 1. Π’ΠΎΡ‚ элСмСнты управлСния ΠΏΠ°Π»ΠΈΡ‚Ρ€Ρ‹ элСмСнтов управлСния.

Β 

Рисунок 14: ДоступныС элСмСнты управлСния ΠΈΠ· ΠΏΠ°Π»ΠΈΡ‚Ρ€Ρ‹ элСмСнтов управлСния Visual C++.

Β 

Π’ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΌ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ отобраТаСтся ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ элСмСнта управлСния Π² строкС состояния. ΠŸΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Π΅ Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‹ β€” это ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ Β«Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²Ρ‹Π΅ Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‹Β». ΠΈΠ»ΠΈ DLU s, Π° Π½Π΅ Π΅Π΄ΠΈΠ½ΠΈΡ† устройства. Π“ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ DLU β€” это срСдняя ΡˆΠΈΡ€ΠΈΠ½Π° ΡˆΡ€ΠΈΡ„Ρ‚Π° Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π°, дСлСнная Π½Π° 4. Π’Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ DLU β€” это срСдняя высота ΡˆΡ€ΠΈΡ„Ρ‚Π°, дСлСнная Π½Π° 8. Π¨Ρ€ΠΈΡ„Ρ‚ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ прСдставляСт собой MS Sans Serif Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ 8 ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠ².

Β 

Π’ΠΎΡ‚ ΠΊΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС элСмСнтов управлСния Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ пСрСтаскиваниС для элСмСнтов управлСния:

Β 

  • Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ управлСния статичСским тСкстом для Name ΠΏΠΎΠ»Π΅. БтатичСский тСкстовый элСмСнт управлСния просто рисуСт символы Π½Π° экранС. НСт взаимодСйствиС с ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ происходит Π²ΠΎ врСмя выполнСния. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ввСсти тСкст послС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ‹ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ, ΠΈ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ° ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ нСобходимости. Π­Ρ‚ΠΎΡ‚ это СдинствСнный статичСский тСкстовый элСмСнт управлСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ Π² тСкстовом спискС, Π½ΠΎ Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ создайтС Π΄Ρ€ΡƒΠ³ΠΈΠ΅ статичСскиС тСкстовыС элСмСнты управлСния, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Ρ€Π°Π½Π΅Π΅ Π½Π° рис. 6-1. Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ Ρ‚Ρƒ ΠΆΠ΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ для Π΄Ρ€ΡƒΠ³ΠΈΡ… элСмСнтов управлСния статичСским тСкстом Π² Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΌ ΠΎΠΊΠ½Π΅. ВсС статичСскиС тСкстовыС элСмСнты управлСния ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€, Π½ΠΎ это Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ значСния, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π½Π΅ трСбуСтся доступ Π½ΠΈ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΈΠ· Π½ΠΈΡ….

Β 

Β 

Рисунок 15: Настройка статичСский тСкст ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅.

Β 

Π£ΡΠΊΠΎΡ€ΠΈΡ‚Π΅Π»ΡŒ ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹

Β 

БтатичСский тСкстовый элСмСнт управлСния (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Имя ΠΈΠ»ΠΈ Навык ) ΠΈΠΌΠ΅Π΅Ρ‚ ампСрсанд ( ΠΈ ) встроСнный Π² тСкст для Π΅Π³ΠΎ подписи. Π’ΠΎ врСмя выполнСния появится ампСрсанд Π² качСствС подчСркивания ΠΏΠΎΠ΄ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ символом. Π­Ρ‚ΠΎΡ‚ ΡƒΡΠΊΠΎΡ€ΠΈΡ‚Π΅Π»ΡŒ ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹ ΠΈΠ»ΠΈ клавиша быстрого доступа, позволяСт ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊ Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΌ элСмСнтам управлСния, удСрТивая Π½Π°ΠΆΠ°Ρ‚ΠΎΠΉ Клавиша Alt (ΠΈΠ»ΠΈ Ctrl ΠΈΠ»ΠΈ Shift ) ΠΈ Π½Π°ΠΆΠ°Π² ΠΊΠ»Π°Π²ΠΈΡˆΡƒ, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ ΠΏΠΎΠ΄Ρ‡Π΅Ρ€ΠΊΠ½ΡƒΡ‚ΠΎΠΌΡƒ символу. Бвязанный ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ сразу Π·Π° статичСским тСкстом Π² порядкС табуляции. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Alt-N ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΊ Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈΠΌΠ΅Π½ΠΈ ΠΈ ΠΠ»ΡŒΡ‚-К ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ Π² ΠΏΠΎΠ»Π΅ со списком Π½Π°Π²Ρ‹ΠΊΠΎΠ². ИзлишнС Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Π΅ символы ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π² Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΌ ΠΎΠΊΠ½Π΅. Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ управлСния Skill ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Alt-K, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ элСмСнт управлСния SSN ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ . Alt-S . К соТалСнию, аксСлСратор ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π½Π°ΠΌ Π½ΡƒΠΆΠ΅Π½ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ шаг для Π·Π°ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ Π² Π΄Ρ€ΡƒΠ³ΠΎΠΌ ΠΌΠΎΠ΄ΡƒΠ»Π΅. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ шагом являСтся установка ΠΊΠ»ΡŽΡ‡Π° Ρ‡Π΅Ρ€Π΅Π· рСсурс Accelerator, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½ΠΈΠΆΠ΅.

Β 

Β 

Рисунок 16: НазначСниС сочСтания клавиш Ρ‡Π΅Ρ€Π΅Π· ResourceView.

Β 

  • Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ управлСния Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈΠΌΠ΅Π½ΠΈ . Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ элСмСнт управлСния являСтся основным срСдством Π²Π²ΠΎΠ΄Π° тСкста Π² Π΄ΠΈΠ°Π»ΠΎΠ³. Π©Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ элСмСнт управлСния ΠΏΡ€Π°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡ‹ΡˆΠΈ ΠΈ Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Properties . Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚Π΅ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ этого элСмСнта управлСния с IDC_EDIT1 ΠΊ IDC_NAME. ΠŸΡ€ΠΈΠΌΠΈΡ‚Π΅ значСния ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ для ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… свойств. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π½Π°Π±ΠΎΡ€Ρ‹ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Авто HScroll, это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ тСкст прокручиваСтся Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎ, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»Π΅ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΎ.

  • SSN (Π½ΠΎΠΌΠ΅Ρ€ ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ страхования). Π§Ρ‚ΠΎ касаСтся Π΄ΠΈΠ°Π»ΠΎΠ³Π° касаСтся Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π°, элСмСнт управлСния SSN Ρ‚ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π½ΠΈ. ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ. ΠŸΡ€ΠΎΡΡ‚ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚Π΅ Π΅Π³ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π½Π° IDC_SSN. ПозТС Π²Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ClassWizard, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это ΠΏΠΎΠ»Π΅ числовым.

Β 

Рисунок 17: ΠœΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ SSN Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ свойства управлСния.

Β 

Рисунок 18: ΠœΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ Π‘ΠΈΠΎ (биография) Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ свойства управлСния.

  • ΠšΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΡ Π³Ρ€ΡƒΠΏΠΏΠΎΠ²ΠΎΠΉ ящик. Π­Ρ‚ΠΎΡ‚ элСмСнт управлСния слуТит Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ группирования Π΄Π²ΡƒΡ… ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Π΅ΠΉ. Π’Π²Π΅Π΄ΠΈΡ‚Π΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΠšΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΡ . ID ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ достаточно.

  • ΠŸΠΎΡ‡Π°ΡΠΎΠ²Π°Ρ ΠΈ Π—Π°Ρ€ΠΏΠ»Π°Ρ‚Π° Π Π°Π΄ΠΈΠΎ-ΠΊΠ½ΠΎΠΏΠΊΠΈ. РасполоТитС эти Ρ€Π°Π΄ΠΈΠΎΠΊΠ½ΠΎΠΏΠΊΠΈ Π²Π½ΡƒΡ‚Ρ€ΠΈ Π“Ρ€ΡƒΠΏΠΏΠΎΠ²ΠΎΠΉ ящик ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ . УстановитС ΠŸΠΎΡ‡Π°ΡΠΎΠ²ΠΎΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΊΠ½ΠΎΠΏΠΊΠΈ для IDC_CAT ΠΈ установитС Π΄Ρ€ΡƒΠ³ΠΈΠ΅ свойства, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ здСсь.

Рисунок 19: ИзмСнСниС свойств ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Ρ.

Β 

Рисунок 20: ИзмСнСниС свойств Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Ρ.

Β 

Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ±Π΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ ΠΊΠΎΠ΄ . Бвойство Auto (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ) Π½Π° Π‘Ρ‚ΠΈΠ»ΠΈ Π½Π°Π±ΠΎΡ€ Π²ΠΊΠ»Π°Π΄ΠΎΠΊ ΠΈ Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠŸΠΎΡ‡Π°ΡΠΎΠ²Π°Ρ ΠΊΠ½ΠΎΠΏΠΊΠ° ΠΈΠΌΠ΅Π΅Ρ‚ Набор свойств Π³Ρ€ΡƒΠΏΠΏΡ‹ . Когда эти свойства настроСны ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ, Windows Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· Π΄Π²ΡƒΡ… ΠΊΠ½ΠΎΠΏΠΎΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Π±Ρ€Π°Π½Π° воврСмя. Π“Ρ€ΡƒΠΏΠΏΠΎΠ²ΠΎΠΉ ящик ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ Π½Π° Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΊΠ½ΠΎΠΏΠΎΠΊ Π½Π΅ влияСт.

  • Π‘Ρ‚Ρ€Π°Ρ…ΠΎΠ²ΠΊΠ° Π“Ρ€ΡƒΠΏΠΏΠΎΠ²ΠΎΠΉ ящик. Π­Ρ‚ΠΎΡ‚ элСмСнт управлСния содСрТит Ρ‚Ρ€ΠΈ Ρ„Π»Π°ΠΆΠΊΠ°. Π’Π²Π΅Π΄ΠΈΡ‚Π΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Π‘Ρ‚Ρ€Π°Ρ…ΠΎΠ²ΠΊΠ° .

  • ПозТС, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ установитС порядок Π²ΠΊΠ»Π°Π΄ΠΎΠΊ Π² Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΌ ΠΎΠΊΠ½Π΅, Π²Ρ‹ ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ ПолС Π³Ρ€ΡƒΠΏΠΏΡ‹ Insurance слСдуСт Π·Π° послСдним ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Π΅ΠΌ Π³Ρ€ΡƒΠΏΠΏΡ‹ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ . Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ страховку свойство control Group Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Β«Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡŒΒ» ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΡƒΡŽ Π³Ρ€ΡƒΠΏΠΏΡƒ. Если Π²Ρ‹ этого Π½Π΅ сдСлаСтС, это Π½Π΅ являСтся ΡΠ΅Ρ€ΡŒΠ΅Π·Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ, Π½ΠΎ Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ нСсколько ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π°ΡŽΡ‰ΠΈΡ… сообщСний ΠΏΡ€ΠΈ запускС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Ρ‡Π΅Ρ€Π΅Π· ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊ.

Β 

Β 

Рисунок 21: ΠœΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ Π‘Ρ‚Ρ€Π°Ρ…ΠΎΠ²Π°Π½ΠΈΠ΅ свойств ΠΊΠΎΡ€ΠΎΠ±ΠΊΠΈ Π³Ρ€ΡƒΠΏΠΏΡ‹.

  • Π–ΠΈΠ·Π½ΡŒ , Π˜Π½Π²Π°Π»ΠΈΠ΄Π½ΠΎΡΡ‚ΡŒ , ΠΈ ΠœΠ΅Π΄ΠΈΡ†ΠΈΠ½ΡΠΊΠΈΠ΅ Ρ„Π»Π°ΠΆΠΊΠΈ. ΠŸΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚Π΅ эти элСмСнты управлСния Π² ΠΏΠΎΠ»Π΅ Π³Ρ€ΡƒΠΏΠΏΡ‹ Β«Π‘Ρ‚Ρ€Π°Ρ…ΠΎΠ²Π°Π½ΠΈΠ΅Β». ΠŸΡ€ΠΈΠΌΠΈΡ‚Π΅ свойства ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, Π½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚Π΅ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ Π½Π° IDC_LIFE, IDC_DIS, ΠΈ IDC_MED. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Π΅ΠΉ, Ρ„Π»Π°ΠΆΠΊΠΈ нСзависимы; ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π»ΡŽΠ±ΡƒΡŽ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΡŽ.

Β 

Β 

Рисунок 22: ΠœΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ Π–ΠΈΠ·Π½ΡŒ , Π˜Π½Π²Π°Π»ΠΈΠ΄Π½ΠΎΡΡ‚ΡŒ ΠΈ ΠœΠ΅Π΄ΠΈΡ†ΠΈΠ½ΡΠΊΠΈΠ΅ свойства Ρ„Π»Π°ΠΆΠΊΠΎΠ² .

  • ПолС со списком Π½Π°Π²Ρ‹ΠΊΠΎΠ² . Π­Ρ‚ΠΎ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΈΠ· Ρ‚Ρ€Π΅Ρ… Ρ‚ΠΈΠΏΠΎΠ² ΠΏΠΎΠ»Π΅ΠΉ со списком. Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚Π΅ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π½Π° IDC_SKILL, Π° Π·Π°Ρ‚Π΅ΠΌ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ Π½Π° стилСй Π²ΠΊΠ»Π°Π΄ΠΊΡƒ ΠΈ установитС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Type Π΄ΠΎ ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ . НаТмитС Π½Π° Π’ΠΊΠ»Π°Π΄ΠΊΠ° Data ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Ρ‚Ρ€ΠΈ Π½Π°Π²Ρ‹ΠΊΠ° (заканчивая ΠΊΠ°ΠΆΠ΄ΡƒΡŽ строку Ρ†ΠΈΡ„Ρ€ΠΎΠΉ Ctrl-Π’Π²ΠΎΠ΄ ) Π² Π’Π²Π΅Π΄ΠΈΡ‚Π΅ элСмСнты списка ΠΊΠΎΡ€ΠΎΠ±ΠΊΠ°.

Β 

Рисунок 23: ΠœΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ Бвойства поля со списком Skill .

Β 

Β 

Рисунок 24: Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ элСмСнта списка.

Β 

Π­Ρ‚ΠΎ ΠΏΠΎΠ»Π΅ со списком Ρ‚ΠΈΠΏΠ° . ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ . ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ ввСсти Ρ‡Ρ‚ΠΎ ΡƒΠ³ΠΎΠ΄Π½ΠΎ Π² Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅ рСдактирования; ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΡ‹ΡˆΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ элСмСнт ΠΈΠ· ΠΏΡ€ΠΈΠΊΡ€Π΅ΠΏΠ»Π΅Π½Π½ΠΎΠ³ΠΎ списка ΠΏΠΎΠ»Π΅ ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π’Π²Π΅Ρ€Ρ… ΠΈΠ»ΠΈ Клавиша направлСния Π²Π½ΠΈΠ· для Π²Ρ‹Π±ΠΎΡ€Π° элСмСнта ΠΈΠ· ΠΏΡ€ΠΈΠ»Π°Π³Π°Π΅ΠΌΠΎΠ³ΠΎ списка.

  • ПолС со списком Educ (ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅). Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚Π΅ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π½Π° IDC_EDUC; Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС ΠΏΡ€ΠΈΠΌΠΈΡ‚Π΅ значСния ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Ρ‚Ρ€ΠΈ уровня образования Π² Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° Data , ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° рис. 25. Π’ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌΡΡ спискС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ ввСсти Ρ‡Ρ‚ΠΎ ΡƒΠ³ΠΎΠ΄Π½ΠΎ Π² ΠΏΠΎΠ»Π΅ рСдактирования, Ρ‰Π΅Π»ΠΊΠ½ΡƒΡ‚ΡŒ стрСлку, Π° Π·Π°Ρ‚Π΅ΠΌ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΏΡƒΠ½ΠΊΡ‚ ΠΈΠ· Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ списка ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π”ΠΎ ΠΈΠ»ΠΈ Π’Π½ΠΈΠ· клавиша направлСния, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ элСмСнт ΠΈΠ· ΠΏΡ€ΠΈΠΊΡ€Π΅ΠΏΠ»Π΅Π½Π½ΠΎΠ³ΠΎ списка.

Β 

Β 

Рисунок 25: ΠœΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ ПолС со списком Educ (ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅).

Β 

Β 

ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ΡŒ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΌΠΎΠ΄ΡƒΠ»Π΅… Ρ‡Π°ΡΡ‚ΡŒ 2

Β 

Β 

Β 

Β 

Β 

Β 

Π”Π°Π»ΡŒΠ½Π΅ΠΉΡˆΠ΅Π΅ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ ΠΈ ΠΊΠΎΠΏΠ°Π½ΠΈΠ΅:

  1. MSDN ЭлСктронная докумСнтация ΠΏΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ классов MFC 7.0.

  2. MSDN ЭлСктронная докумСнтация ΠΏΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ классов MFC 9.0 β€” послСдняя вСрсия.

  3. ΠŸΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ миграция Π²Π°ΡˆΠΈΡ… старых ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ.

  4. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° MSDN

  5. DCOM Π² MSDN.

  6. COM+ Π² MSDN.

  7. COM Π² MSDN.

  8. Π’ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… Windows.

  9. Π£Ρ‡Π΅Π±Π½ΠΈΠΊ ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ Win32.

  10. Π›ΡƒΡ‡ΡˆΠ΅Π΅ ΠΈΠ· C/C++, MFC, Windows ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… связанных ΠΊΠ½ΠΈΠ³.

  11. Unicode ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ±Π°ΠΉΡ‚ΠΎΠ²Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ символов: Π˜ΡΡ‚ΠΎΡ€ΠΈΡ ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ.

Β 

Β 


ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈ Π½Π΅ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹ΠΉ

  1. Начало Ρ€Π°Π±ΠΎΡ‚Ρ‹ с C ΠΈΠ»ΠΈ C++ | Π£Ρ‡Π΅Π±Π½ΠΈΠΊ C | Π£Ρ‡Π΅Π±Π½ΠΈΠΊ ΠΏΠΎ Π‘++ | Часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ вопросы ΠΏΠΎ C ΠΈ C++ | ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ компилятор | Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΡ для распространСнных ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ
  1. 02.12.2006 #1

    ΠΏΡ€ΠΈΠ²Π΅Ρ‚ всСм,
    Π― просто Ρ…ΠΎΡ‚Π΅Π» Π±Ρ‹ Π·Π½Π°Ρ‚ΡŒ, ΠΌΠΎΠΆΠ΅Ρ‚ Π»ΠΈ ΠΊΡ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ здСсь ΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΌΠ½Π΅, Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹ΠΌ ΠΈ Π½Π΅ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹ΠΌ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²Ρ‹ΠΌ ΠΎΠΊΠ½ΠΎΠΌ, поТалуйста, Π½Π° английском языкС.

    Π― ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π» мноТСство ΠΊΠ½ΠΈΠ³ ΠΏΠΎ Win32 API Π½Π° эту Ρ‚Π΅ΠΌΡƒ, Π½ΠΎ Π½ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π½ΠΈΡ… Π½Π΅ упоминаСтся ясно различия ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΈ Π½Π΅ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²Ρ‹ΠΌΠΈ ΠΎΠΊΠ½Π°ΠΌΠΈ. ΠΎΠ½ΠΈ Π΄Π°ΡŽΡ‚ ΠΎΡ‡Π΅Π½ΡŒ простыС описания, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Β«Π½Π΅ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹ΠΉ Π΄ΠΈΠ°Π»ΠΎΠ³ Π±ΠΎΠ»Π΅Π΅ нСзависим, Ρ‡Π΅ΠΌ ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹ΠΉΒ» ΠΈ Β«ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹ΠΉ Π΄ΠΈΠ°Π»ΠΎΠ³ являСтся Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ распространСнным», ΠΎΠ΄Π½Π°ΠΊΠΎ это Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ ΠΌΠ½Π΅ ΠΎ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π·Π½ΠΈΡ†Π΅.

    Π² послСднСм выпускС ΠΌΠΎΠ΅ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ я использовал простой Π²Ρ‹Π·ΠΎΠ² DialogBox для создания Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π°. Π½ΠΎ Π² этом выпускС я Π±ΡƒΠ΄Ρƒ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ Ρ†Π΅Π»Ρ‹ΠΉ ряд ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠΉ графичСского интСрфСйса, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ большС мСню ΠΈ клавиш быстрого доступа.

    ΠΎΠ΄Π½Π°ΠΊΠΎ Π² этом выпускС я Π½Π΅ Π²ΠΈΠΆΡƒ, ΠΊΠ°ΠΊ я смогу Ρ€Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, Ρ‚Π°ΠΊΡƒΡŽ ​​​​как TranslateAccelerator, Π² ΠΌΠΎΠ΅ΠΌ WinMain ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΌΡƒ ΠΎΠΊΠ½Ρƒ ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Π΅Π½Π½Ρ‹Π΅ сообщСния ускоритСля, Ссли Ρƒ мСня Π½Π΅Ρ‚ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ дСскриптора Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΈΠ· WinMain. Π·Π°ΠΌΠ΅Π½Π° DialogBox Π½Π° CreateDialog Ρ€Π΅ΡˆΠΈΡ‚ эту ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ, Π½ΠΎ DialogBox создаСт модальноС Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ, Π° CreateDialog создаСт нСмодальноС Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ.

    ΠΌΠΎΠΆΠ΅Ρ‚ Π»ΠΈ ΠΊΡ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΠΏΠΎΠΌΠΎΡ‡ΡŒ ΠΌΠ½Π΅ с этой модальной ΠΈ нСмодальной Π²Π΅Ρ‰ΡŒΡŽ? Ρ‚Π°ΠΊΠΆΠ΅ Π²Ρ‹ Π΄ΡƒΠΌΠ°Π΅Ρ‚Π΅, Ρ‡Ρ‚ΠΎ я ΠΌΠΎΠ³Ρƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ DialogBox ΠΈ ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅ Π²Π΅Ρ‰ΠΈ, ΠΊΠ°ΠΊ клавиши быстрого доступа, ΠΈ Ссли Π΄Π°, Ρ‚ΠΎ ΠΊΠ°ΠΊ ΠΌΠ½Π΅ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ (Π±ΡƒΠ΄Π΅Ρ‚ Π»ΠΈ это Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ Π±Π΅Π· Ρ†ΠΈΠΊΠ»Π° сообщСний, содСрТащСго TranslateMessage?)?

    любая ΠΏΠΎΠΌΠΎΡ‰ΡŒ здСсь Π±ΡƒΠ΄Π΅Ρ‚ принята с Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€Π½ΠΎΡΡ‚ΡŒΡŽ. Π·Π°Ρ€Π°Π½Π΅Π΅ спасибо.

    ПослСдний Ρ€Π°Π· Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π»ΠΎΡΡŒ Π‘Π»ΠΈΡ‡; 02. 12.2006 Π² 16:39.


    Intel Core 2 Quad Q6600 @ 2,40 Π“Π“Ρ†
    3072 ΠœΠ‘ PC2-5300 DDR2
    2 x 320 Π“Π‘ SATA (640 Π“Π‘)
    NVIDIA GeForce 8400GS 256 ΠœΠ‘ PCI-E


  2. 02.12.2006 #2

    ΠΠ΅ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹ΠΉ Π΄ΠΈΠ°Π»ΠΎΠ³ позволяСт Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅, которая Π΅Π³ΠΎ создала. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΎΠΊΠ½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.
    Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, модальноС Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ всСгда Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΈ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ всС Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΎΠΊΠ½Π° вашСй ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΏΠΎΠΊΠ° ΠΎΠ½ΠΎ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΎ. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΎΠΊΠ½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Ссли ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΎΠΆΠΈΠ΄Π°Π΅Ρ‚ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ модального Π΄ΠΈΠ°Π»ΠΎΠ³Π°.

    Π’Π²ΠΎΠ΄ ΠΊΠΎΠ΄Π° Π² Code::Blocks 8.02, компиляция Π² MinGW 3.4.5.


  3. 02.12.2006 #3

    Оба ΠΎΠ½ΠΈ основаны Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ΠΈ Ρ‚ΠΎΠΌ ΠΆΠ΅ систСмном классС ΠΎΠΊΠΎΠ½ (имя класса ΠΎΠΊΠ½Π° «#32770») с Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ, опрСдСляСмым систСмой — Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡ…ΠΎΠΆΠ΅ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ±Π° ΡΠ²Π»ΡΡŽΡ‚ΡΡ проявлСниями класса ΠΎΠΊΠ½Π°, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ систСмой «ΠΊΠ½ΠΎΠΏΠΊΠ°», Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ различия ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‚ΠΈΠΏΠ°ΠΌΠΈ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²Ρ‹Ρ… ΠΎΠΊΠΎΠ½ Π½Π΅ ΡΡ‚ΠΎΠ»ΡŒ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½Ρ‹ Π½ΠΈ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎ, Π½ΠΈ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, повСдСнчСски.

    МодальноС Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ (созданноС с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ DialogBox,DialogBoxParam) Π² основном ΠΏΡ€ΠΈΠ²Π»Π΅ΠΊΠ°Π΅Ρ‚ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΠΏΠΎΠΊΠ° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΎ β€” ΠΎΠ½ΠΎ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΎ для ситуаций, ΠΊΠΎΠ³Π΄Π° трСбуСтся Π²Π²ΠΎΠ΄ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ ΠΈΠ»ΠΈ Π΅Π³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚/ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠ΅, ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ΡŒ; ΠΎΠ½ΠΈ Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π²Π°ΠΌ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΎΠΊΠ½Π° Π² Ρ‚ΠΎΠΌ ΠΆΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ (модальноС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅) ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ Π² Π΄Ρ€ΡƒΠ³ΠΈΠ΅ прилоТСния (систСмноС модальноС), ΠΏΠΎΠΊΠ° модальноС Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΎ.

    ΠΠ΅ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹ΠΉ Π΄ΠΈΠ°Π»ΠΎΠ³ ΠΏΠΎΠ΄ΠΎΠ±Π΅Π½ Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ ΠΎΠΊΠ½Ρƒ; Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΎΠΊΠ½Π°ΠΌΠΈ Π² Ρ‚ΠΎΠΌ ΠΆΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ.

    Ни ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Ρ‚ΠΈΠΏΠΎΠ² Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²Ρ‹Ρ… ΠΎΠΊΠΎΠ½ Π½Π΅ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для использования Π² качСствС основного ΠΎΠΊΠ½Π° прилоТСния, хотя Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ люди всС Ρ€Π°Π²Π½ΠΎ Π΄Π΅Π»Π°ΡŽΡ‚ это — ΠΏΠΎ ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅Ρ€Π΅, Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° Π½Π΅ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ°Ρ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ограничСния этого ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π°. Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, ΠΎΠ½ΠΈ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для получСния ΠΈΠ»ΠΈ прСдоставлСния ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ/ΠΎΡ‚Π²Π΅Ρ‚Π°/Π²Ρ‹Π±ΠΎΡ€Π°, ΠΈ это Ρ‚ΠΈΠΏ ΠΎΡ‚Π²Π΅Ρ‚Π°/Π²Π²ΠΎΠ΄Π°, Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π² ΠΈΠ΄Π΅Π°Π»Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ ваш Π²Ρ‹Π±ΠΎΡ€ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ.

    Для дальнСйшСго уточнСния рассмотритС Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ создания простых тСстовых ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ ΠΎΠ±Π° Ρ‚ΠΈΠΏΠ° Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ² ΠΈ ΠΈΡΡΠ»Π΅Π΄ΡƒΡŽΡ‚ ΠΎΠ±Π° различия ΠΊΠΎΠ΄Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ для вашСго собствСнного Ρ†ΠΈΠΊΠ»Π° сообщСний прилоТСния для Π½Π΅ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹Ρ… Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ², ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠ΅Π½ΠΈΠ΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ DestroyWindow ΠΈ Ρ‚. Π΄.), послСдствия этих Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠΉ ΠΈ Π½Π°Π±Π»ΡŽΠ΄Π°ΠΉΡ‚Π΅ Π·Π° ΠΈΡ… ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, ΠΎΠ±Ρ€Π°Ρ‰Π°ΡΡΡŒ ΠΊ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ msdn ΠΈ Π»ΡŽΠ±Ρ‹ΠΌ Π΄Ρ€ΡƒΠ³ΠΈΠΌ тСкстам, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρƒ вас Π΅ΡΡ‚ΡŒ.

    FAQ ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ
    Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: этот Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ носитСлСм дСзинформация вирус.


Β« ΠŸΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π°Ρ Ρ‚Π΅ΠΌΠ° | Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ Ρ‚Π΅ΠΌΠ° Β»

ΠŸΠΎΠΏΡƒΠ»ΡΡ€Π½Ρ‹Π΅ страницы

  • Как Π½Π°Ρ‡Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ с C++ (ΠΈΠ»ΠΈ C) сСгодня
  • C Π£Ρ‡Π΅Π±Π½ΠΎΠ΅ пособиС
  • Π£Ρ‡Π΅Π±Π½ΠΈΠΊ ΠΏΠΎ C++
  • 5 способов Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ быстрСС
  • 5 самых распространСнных ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‚ΡΡ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠ΅ программисты
  • Как Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ компилятор
  • 8 РаспространСнныС ошибки программирования
  • Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π‘++ 11?
  • Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈΠ³Ρ€Ρ‹ ΠΎΡ‚ Π½Π°Ρ‡Π°Π»Π° Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π°

ПослСдниС добавлСния

  • Как ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΠ±Ρ‰ΡƒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ Π² Linux с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ GCC β€” 30 дСкабря 2011 Π³.

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

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