Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«ΠžΡ„ΠΈΡΠ½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅Β». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 13

Автор Π˜Ρ€ΠΈΠ½Π° Π€Ρ€ΠΈΠ·Π΅Π½

ВСхнология выполнСния

1. ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Word, сохранитС Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π² Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ VBA.

2. Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ Ρ„ΠΎΡ€ΠΌΡƒ (рис. 39).


Рис. 39. Π€ΠΎΡ€ΠΌΠ° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° 21 Π² Ρ€Π°Π±ΠΎΡ‡Π΅ΠΌ состоянии. Π‘ΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ ΠΎ допускС


3. ΠŸΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΡƒΠΉΡ‚Π΅ Ρ„ΠΎΡ€ΠΌΡƒ с Name Π½Π° frmOne. Для этого Π°ΠΊΡ‚ΠΈΠ²ΠΈΠ·ΠΈΡ€ΡƒΠΉΡ‚Π΅ Ρ„ΠΎΡ€ΠΌΡƒ (Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ Π½Π° Π½Π΅ΠΉ), ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π² ΠΎΠΊΠ½ΠΎ свойств ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° (properties), Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚Π΅ свойство Name (пСрвая строка) ΠΈ ΠΏΡ€ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ frmOne.

4. Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ тСкстовыС поля textbox1 ΠΈ textbox2. ΠŸΠ΅Ρ€Π²ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для Π²Π²ΠΎΠ΄Π° ΠΈΠΌΠ΅Π½ΠΈ, Π²Ρ‚ΠΎΡ€ΠΎΠ΅ – для Π²Π²ΠΎΠ΄Π° пароля, поэтому ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΡƒΠΉΡ‚Π΅ ΠΈΡ… Π½Π° txtName ΠΈ txtPassword (Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ ΠΏΡƒΠ½ΠΊΡ‚Ρƒ 3).

5. ΠšΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, Π²Π²ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ Π½Π΅ отобраТаСтся Π² ΠΏΠΎΠ»Π΅. Π§Ρ‚ΠΎΠ±Ρ‹ Π²Π²ΠΎΠ΄ΠΈΠΌΡ‹Π΅ символы пароля замСнялись Π·Π²Π΅Π·Π΄ΠΎΡ‡ΠΊΠ°ΠΌΠΈ, Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚Π΅ ΠΏΠΎΠ»Π΅ пароля, Π·Π°Ρ‚Π΅ΠΌ Π² ΠΎΠΊΠ½Π΅ Properties Π½Π°ΠΉΠ΄ΠΈΡ‚Π΅ свойство PasswordChar ΠΈ Π·Π°Π΄Π°ΠΉΡ‚Π΅ для Π½Π΅Π³ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Β«*Β».

6. Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ. ΠŸΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΡƒΠΉΡ‚Π΅ ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΊΠ½ΠΎΠΏΠΊΡƒ Π½Π° btnOK. Кнопка OK Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π½Π° Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ клавиши Enter Ρ„ΠΎΡ€ΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Π° Ρ€Π΅Π°Π³ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Π½Π° Ρ‰Π΅Π»Ρ‡ΠΎΠΊ этой ΠΊΠ½ΠΎΠΏΠΊΠΈ. Для этого ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ свойства Default ΠΊΠ½ΠΎΠΏΠΊΠΈ btnOK Π½Π° True.

7. ΠŸΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΡƒΠΉΡ‚Π΅ Π²Ρ‚ΠΎΡ€ΡƒΡŽ ΠΊΠ½ΠΎΠΏΠΊΡƒ Π½Π° btnCancel. Π©Π΅Π»Ρ‡ΠΎΠΊ ΠΊΠ½ΠΎΠΏΠΊΠΈ Cancel ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ эквивалСнтСн Π½Π°ΠΆΠ°Ρ‚ΠΈΡŽ клавиши Escape. Π§Ρ‚ΠΎΠ±Ρ‹ Π² вашСм ΠΎΠΊΠ½Π΅ Π±Ρ‹Π»ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚Π°ΠΊ, Π·Π°Π΄Π°ΠΉΡ‚Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Β«TrueΒ» для свойства Cancel.

8. Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ закрытия Ρ„ΠΎΡ€ΠΌΡ‹.

9. Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΊΠ½ΠΎΠΏΠΊΠΈ ОК. Π’ Π·Π°Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹

Private Sub btnOK_Click()

End Sub

Π²ΡΡ‚Π°Π²ΡŒΡ‚Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ MsgBox Txtname & Β«ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»(Π°) доступ». Π’ этом ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π΅ тСкст, Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ Π² ΠΏΠΎΠ»Π΅ txtName, ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ΡΡ с ΠΏΠΎΡΡΠ½ΡΡŽΡ‰Π΅ΠΉ строкой ΠΈ выводится Π² ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΌ ΠΎΠΊΠ½Π΅.

10. Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ пароля. Π—Π°ΠΊΡ€ΠΎΠ΅ΠΌ доступ ΠΊ ΠΊΠ½ΠΎΠΏΠΊΠ΅ OK, ΠΏΠΎΠΊΠ° Π½Π΅ Π²Π²Π΅Π΄Π΅Π½ Π²Π΅Ρ€Π½Ρ‹ΠΉ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ. Для этого ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚Π΅ свойство Enabled ΠΊΠ½ΠΎΠΏΠΊΠΈ OK Π½Π° False (доступ ΠΊ ΠΊΠ½ΠΎΠΏΠΊΠ΅ Π·Π°ΠΊΡ€Ρ‹Ρ‚) ΠΈ Π²Π²Π΅Π΄ΠΈΡ‚Π΅ Π½ΠΎΠ²ΡƒΡŽ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ:

Private Sub CheckOK()

Const pas = Β«abcΒ» 'ΠŸΠ°Ρ€ΠΎΠ»ΡŒ

If Txtpassword = pas Then 'Если тСкст Π² ΠΏΠΎΠ»Π΅

Txtpassword совпадаСт с ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΌ, Ρ‚ΠΎ btnOK.Enabled = True 'доступ ΠΊ ΠΊΠ½ΠΎΠΏΠΊΠ΅ OK ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚

Else 'ΠΈΠ½Π°Ρ‡Π΅

btnOK.Enabled = False 'доступ ΠΊ ΠΊΠ½ΠΎΠΏΠΊΠ΅ OK Π·Π°ΠΊΡ€Ρ‹Ρ‚

End If

End Sub

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Π΄ΠΎΠ»ΠΆΠ½Π° Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΈ Π²Π²ΠΎΠ΄Π΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ пароля. Для этого Π² ΠΎΠΊΠ½Π΅ Ρ„ΠΎΡ€ΠΌΡ‹ Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ Π΄Π²Π°ΠΆΠ΄Ρ‹ Π²Ρ‚ΠΎΡ€ΠΎΠ΅ тСкстовоС ΠΏΠΎΠ»Π΅ (ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½ΠΎΠ΅ для пароля). Π’ ΠΏΠΎΡΠ²ΠΈΠ²ΡˆΡƒΡŽΡΡ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ

Private Sub Txtpassword_Change()

End Sub

Π²Π²Π΅Π΄ΠΈΡ‚Π΅ Π΅Π΄ΠΈΠ½ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ CheckOK, которая ΠΏΡ€ΠΈ внСсСнии Π»ΡŽΠ±Ρ‹Ρ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΏΠΎΠ»Π΅ пароля Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ пароля.

11. Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ список Π³Ρ€ΡƒΠΏΠΏΡ‹. РасполоТитС Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅ элСмСнт управлСния ListBox. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π΅Π³ΠΎ имя ListBox1. ΠžΡΡ‚Π°Π²ΠΈΠΌ Π΅Π³ΠΎ Π² Ρ‚Π°ΠΊΠΎΠΌ Π²ΠΈΠ΄Π΅. Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ список ΠΌΠΎΠΆΠ½ΠΎ Π² ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π΅ With:

With ListBox1

List = Array(«Иванова ΠœΠ°Ρ€ΠΈΠ½Π°Β», Β«Π“ΠΎΠ½Ρ‡Π°Ρ€ΠΎΠ²Π° Π•Π»Π΅Π½Π°Β», Β«Π—ΠΎΡ‚ΠΎΠ²Π° Π’Π°Ρ‚ΡŒΡΠ½Π°Β», Β«ΠšΡ€ΠΈΠ½Ρ‡Π΅Π½ΠΊΠΎ Π‘Π²Π΅Ρ‚Π»Π°Π½Π°Β», Β«ΠžΡ€Π»ΠΎΠ² Π‘Π΅Ρ€Π³Π΅ΠΉΒ», Β«ΠŸΠ΅Ρ‚Ρ€ΠΎΠ² АлСксандр»)

End With

Π—Π΄Π΅ΡΡŒ List – свойство элСмСнта ListBox, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ являСтся массивом. Π’ΡΡ‚Π°Π²ΡŒΡ‚Π΅ этот ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π² ΡƒΠΆΠ΅ ΠΈΠΌΠ΅ΡŽΡ‰ΡƒΡŽΡΡ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ btnOK_Click.

12. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ„ΠΎΡ€ΠΌΡ‹. ПослС запуска Ρ„ΠΎΡ€ΠΌΡ‹ Π²Π²Π΅Π΄ΠΈΡ‚Π΅ своС имя ΠΈ Π²Π΅Ρ€Π½Ρ‹ΠΉ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ. Π”ΠΎΠ»ΠΆΠ½Π° ΡΡ‚Π°Ρ‚ΡŒ доступной ΠΊΠ½ΠΎΠΏΠΊΠ° ok. ПослС Π΅Π΅ наТатия ΠΏΠΎΡΠ²Π»ΡΡŽΡ‚ΡΡ сообщСниС «Имя ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»(Π°) доступ» ΠΈ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π½Ρ‹ΠΉ список. ПослС наТатия ΠΊΠ½ΠΎΠΏΠΊΠΈ Π—Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ Ρ„ΠΎΡ€ΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Π° Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒΡΡ.

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ задания

13. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ список с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° AddItem. Бинтаксис:

ИмяБписка. AddItem Β«Π½ΠΎΠ²Ρ‹ΠΉ элСмСнт списка».

14. ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Π°ΠΉΡ‚Π΅ событиС, связанноС со Ρ‰Π΅Π»Ρ‡ΠΊΠΎΠΌ ΠΏΠΎ Ρ„ΠΎΡ€ΠΌΠ΅ (ΠΌΠΈΠΌΠΎ элСмСнтов управлСния). ΠŸΡƒΡΡ‚ΡŒ Π² ΠΎΡ‚Π²Π΅Ρ‚ Π½Π° это выводится ΠΊΠ°ΠΊΠΎΠ΅-Π½ΠΈΠ±ΡƒΠ΄ΡŒ сообщСниС Ρ‚ΠΈΠΏΠ° Β«Π’Ρ‹ Π½Π΅ ΠΏΠΎΠΏΠ°Π»ΠΈ ΠΏΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ΅!Β».

4.2. Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ управлСния ComboBox, OptionButton ΠΈ Frame

ПолС со списком

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ управлСния Π‘ΠΎΡ‚bΠΎΠ’ΠΎΡ…

(ΠΏΠΎΠ»Π΅ со списком) создаСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ элСмСнта. Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ управлСния Π‘ΠΎΡ‚ΠͺΠΎΠ’ΠΎΡ… примСняСтся для хранСния списка Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. Он сочСтаСт Π² сСбС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ возмоТности списка ListBox ΠΈ поля TextBox. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ListBox, Π² элСмСнтС управлСния Π‘ΠΎΡ‚ΠͺΠΎΠ’ΠΎΡ… отобраТаСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ элСмСнт списка. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Ρƒ Π½Π΅Π³ΠΎ отсутствуСт Ρ€Π΅ΠΆΠΈΠΌ выдСлСния Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… элСмСнтов списка, Π½ΠΎ ΠΎΠ½ позволяСт Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΏΠΎΠ»Π΅ Π²Π²ΠΎΠ΄Π°, ΠΊΠ°ΠΊ это Π΄Π΅Π»Π°Π΅Ρ‚ элСмСнт управлСния TextBox.

Бвойства ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ComboBox, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ListIndex, ListCount, Enabled, List, ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Clear, RemoveItem ΠΈ AddItem Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ свойствам ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌ списка ListBox. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Ρƒ Π½Π΅Π³ΠΎ Π΅ΡΡ‚ΡŒ ряд ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… свойств:

DropButtonStyle – устанавливаСт Π²ΠΈΠ΄ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ списка. ДопустимыС значСния:

β€’ fmDropButtonStylePlain – ΠΊΠ½ΠΎΠΏΠΊΠ° Π±Π΅Π· символов;

β€’ fmDropButtonStyleArrowDisplays – ΠΊΠ½ΠΎΠΏΠΊΠ° со стрСлкой;

β€’ fmDropButtonStyleEllips – ΠΊΠ½ΠΎΠΏΠΊΠ° с эллипсом;

β€’ fmDropButtonStyleReduce – ΠΊΠ½ΠΎΠΏΠΊΠ° с Π»ΠΈΠ½ΠΈΠ΅ΠΉ.

ListRows – устанавливаСт число элСмСнтов, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΡ‹Ρ… Π² раскрываСмом спискС.

MatchRequired – допустимыС значСния: True (нСльзя ввСсти значСния) ΠΈ False (Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС).

MatchFound – допустимыС значСния: True (срСди элСмСнтов Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ списка имССтся элСмСнт, ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΉ с Π²Π²ΠΎΠ΄ΠΈΠΌΡ‹ΠΌ Π² ΠΏΠΎΠ»Π΅ Π²Π²ΠΎΠ΄Π° Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ списка) ΠΈ False (Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС).

ΠŸΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΡŒ ΠΈ Ρ€Π°ΠΌΠΊΠ°

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ управлСния OptionButton

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

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ управлСния Frame

(Ρ€Π°ΠΌΠΊΠ°) создаСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ элСмСнта. Он ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ элСмСнтов управлСния. ΠžΡΠ½ΠΎΠ²Π½Ρ‹ΠΌ свойством Ρ€Π°ΠΌΠΊΠΈ являСтся caption, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‰Π΅Π΅ надпись Ρ€Π°ΠΌΠΊΠΈ.

Π—Π°Π΄Π°Ρ‡ΠΈ Π½Π° Π·Π°ΠΊΡ€Π΅ΠΏΠ»Π΅Π½ΠΈΠ΅ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π°

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 22.[1] Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, которая позволяСт ΠΏΡ€ΠΈ Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΠΈΠ· списка Ρ„ΠΎΡ€ΠΌΡ‹ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… чисСл ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒ суммированиС, Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ срСднСС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² зависимости ΠΎΡ‚ Π²Ρ‹Π±ΠΎΡ€Π° дСйствия (ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ).

НаТатиС ΠΊΠ½ΠΎΠΏΠΊΠΈ Β«Π’Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒΒ» Π΄ΠΎΠ»ΠΆΠ½ΠΎ привСсти ΠΊ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡŽ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π°Π΄ Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΌΠΈ числами ΠΈ Π²Ρ‹Π²ΠΎΠ΄Ρƒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° Π² ΠΏΠΎΠ»Π΅ Β«Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Β» (рис. 40).


Рис. 40. Разработанная Ρ„ΠΎΡ€ΠΌΠ° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° 22 Π² Ρ€Π°Π±ΠΎΡ‡Π΅ΠΌ состоянии


ВСхнология выполнСния

ΠžΠ±ΡΡƒΠ΄ΠΈΠΌ, ΠΊΠ°ΠΊ привСдСнная Π½ΠΈΠΆΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Ρ€Π΅ΡˆΠ°Π΅Ρ‚ пСрСчислСнныС ΠΏΡƒΠ½ΠΊΡ‚Ρ‹ Π·Π°Π΄Π°Ρ‡ΠΈ ΠΈ Ρ‡Ρ‚ΠΎ происходит Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅.

UserForm_Initialize

1. ΠΠΊΡ‚ΠΈΠ²ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ

2. Π—Π°ΠΏΡ€Π΅Ρ‰Π°Π΅Ρ‚ Π²Π²ΠΎΠ΄ Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΏΠΎΠ»Π΅ Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚.

3. Π‘вязываСт с ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ Π’Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ ΠΈ Π—Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ, Π° Ρ‚Π°ΠΊΠΆΠ΅ с ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΡΠΌΠΈ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ подсказки

НаТатиС ΠΊΠ½ΠΎΠΏΠΊΠΈ Π’Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ запускаСт Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ CommandButton1_Click

ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚, ΠΊΠ°ΠΊΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΡŒ Π²Ρ‹Π±Ρ€Π°Π½. Π’ зависимости ΠΎΡ‚ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Ρ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ дСйствиС Π½Π°Π΄ Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΌΠΈ Π² спискС числами. НайдСнноС число выводится Π² ΠΏΠΎΠ»Π΅ Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚

НаТатиС ΠΊΠ½ΠΎΠΏΠΊΠΈ Π—Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ запускаСт Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ CommandButton2_Click

Π—Π°ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ


ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° наТатия ΠΊΠ½ΠΎΠΏΠΊΠΈ Β«Π’Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒΒ» ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ вычислСния с элСмСнтами списка Π² зависимости ΠΎΡ‚ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ. Вводятся ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ n ΠΈ i, Π³Π΄Π΅ n ΠΈΠ³Ρ€Π°Π΅Ρ‚ Ρ€ΠΎΠ»ΡŒ счСтчика числа Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹Ρ… элСмСнтов ΠΈΠ· списка, Π° i – Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Π°Ρ пСрСмСнная. Π’Π°ΠΊΠΆΠ΅ вводятся ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ вычислСний: сумма, ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΈ срСднСС. ВсС ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ вычислСния ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚, которая ΠΈ выдаСтся Π² тСкстовоС ΠΏΠΎΠ»Π΅.


ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° наТатия ΠΊΠ½ΠΎΠΏΠΊΠΈ Π’Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ

Private Sub CommandButton1_Click ()

Dim i As Integer

Dim n As Integer

Dim Π‘ΡƒΠΌΠΌΠ° As Double

Dim ΠŸΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ As Double

Dim Π‘Ρ€Π΅Π΄Π½Π΅Π΅ As Double

Dim Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ As Double

' ΠŸΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Ρ вычисляСтся сумма

If OptionButton1.Value = True Then

Π‘ΡƒΠΌΠΌΠ° = 0

With ListBox1

For i = 0 To.ListCount – 1

If.selected(i)=true then

Π‘ΡƒΠΌΠΌΠ° = Π‘ΡƒΠΌΠΌΠ° +.List(i)

End if

Next i

End With

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ = Π‘ΡƒΠΌΠΌΠ°

End If

' ΠŸΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Ρ вычисляСтся ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹Ρ… элСмСнтов

If OptionButton2.Value = True Then

ΠŸΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ = 1

With ListBox1

For i = 0 To.ListCount – 1

If.Selected(i)=True Then

ΠŸΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ = ΠŸΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ *.List(i)

End if

Next i

End With

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ = ΠŸΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅

End If

' ΠŸΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅Π³ΠΎ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Ρ вычисляСтся срСднСС арифмСтичСскоС

If OptionButton3.Value = True Then

Π‘Ρ€Π΅Π΄Π½Π΅Π΅ = 0

n = 0

With ListBox1

For i =0 To.ListCount – 1

If.Selected(i)=True Then

n=n+1

Π‘Ρ€Π΅Π΄Π½Π΅Π΅ = Π‘Ρ€Π΅Π΄Π½Π΅Π΅ +.List(i)

End if

Next i

End With

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ = Π‘Ρ€Π΅Π΄Π½Π΅Π΅ /n

End If

' ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выводится Π² тСкстовоС ΠΏΠΎΠ»Π΅

TextBox1.Text = CStr(Format(Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚, Β«FixedΒ»))

End Sub

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° наТатия ΠΊΠ½ΠΎΠΏΠΊΠΈ Β«Π—Π°ΠΊΡ€Ρ‹Ρ‚ΡŒΒ»

Private Sub CommandButton2_Click()

UserForm1.Hide

End Sub

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ списка ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π΅ Π΅Π³ΠΎ Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅, ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ… подсказок, Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½ΠΈΠΈ Π²Π²ΠΎΠ΄Π° тСкста Π² ΠΏΠΎΠ»Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅.