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

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«Delphi. Π’Ρ€ΡŽΠΊΠΈ ΠΈ эффСкты». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 59

Автор Π’Π°Π»Π΅Ρ€ΠΈΠΉ Борисок

nCount := 0;

FillChar(AbsFrequency, SizeOf(AbsFrequency), 0);

for i := 0 to mmEncryptMessage.Lines.Count – 1 do

for j := 1 to Length(mmEncryptMessage.Lines[i]) do

begin

//ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΠΉ символ сообщСния

Ch := mmEncryptMessage.Lines[i][j];

//провСряСм, ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ‚ Π»ΠΈ символ

//мноТСству русских Π±ΡƒΠΊΠ²

if Ch in RusLetters then

begin

//подсчитываСм количСство Π΄Π°Π½Π½ΠΎΠΉ Π±ΡƒΠΊΠ²Ρ‹ Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ

//ΠΈ Π² совокупности со всСми русскими Π±ΡƒΠΊΠ²Π°ΠΌΠΈ

AbsFrequency[UpCaseRus(Ch)] :=

AbsFrequency[UpCaseRus(Ch)] + 1;

Inc(nCount);

end;

end;

if nCount = 0 then

begin

MessageDlg(\'Π”Π΅ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Ρ‚ΡŒ сообщСниС нСльзя, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ\' +

\' отсутствуСт русский тСкст\', mtError, [mbOk], 0);

Exit;

end;

//вычисляСм ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ частоты Π±ΡƒΠΊΠ² Π² Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ

//сообщСнии

FillChar(RelFreqInMsg, SizeOf(RelFreqInMsg), 0);

for i := Low(RusSrcAlphabet) to High(RusSrcAlphabet) div 2 do

RelFreqInMsg[RusSrcAlphabet[i]] :=

AbsFrequency[RusSrcAlphabet[i]] / nCount;

//ΠΏΠ΅Ρ€Π΅Π±ΠΈΡ€Π°Π΅ΠΌ всС Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ ΠΊΠ»ΡŽΡ‡ΠΈ ΠΈ Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ Ρ‚ΠΎΡ‚, ΠΏΡ€ΠΈ

//использовании ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ частоты появлСния русских Π±ΡƒΠΊΠ²

//Π² Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ сообщСнии Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π±Π»ΠΈΠ·ΠΊΠΈ ΠΊ частотам

//появлСния русских Π±ΡƒΠΊΠ² Π² русском языкС, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ сумма

//Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Ρ‹Ρ… разностСй частот Π±ΡƒΠΊΠ² Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ наимСньшСй

h := High(RusSrcAlphabet) div 2 + 1;

MinDelta := h;

for i := 1 to h – 1 do

begin

Delta := 0;

for j := 0 to h – 1 do

Delta := Delta + Abs(RelFreqInLang[RusSrcAlphabet[j]] –

RelFreqInMsg[RusSrcAlphabet[(i + j + h) mod h]]);

//очСрСдная сумма разностСй мСньшС всСх ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ…?

if MinDelta > Delta then

begin

//Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅ΠΌ СС…

MinDelta := Delta;

//… ΠΈ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅ΠΌ ΠΊΠ»ΡŽΡ‡, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΎ

//Π΄Π°Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅

nHackKey := i;

end;

end;

edKey.Text := IntToStr(nHackKey);

h := High(RusSrcAlphabet) + 1;

RecalcAlphabet(h – nHackKey mod h);

mmDecryptMessage.Lines.BeginUpdate;

mmDecryptMessage.Clear;

for i := 0 to mmEncryptMessage.Lines.Count – 1 do

mmDecryptMessage.Lines.Add(DecryptString(

mmEncryptMessage.Lines[i], nHackKey));

mmDecryptMessage.Lines.EndUpdate;

end;

Π˜Ρ‚ΠΎΠ³ Ρ€Π°Π±ΠΎΡ‚Ρ‹ написанного прилоТСния ΠΏΠΎΠΊΠ°Π·Π°Π½ Π½Π° рис. 12.9. Как Π²ΠΈΠ΄ΠΈΡ‚Π΅, Ρƒ нас всС ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ!

Рис. 12.9. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ прилоТСния Β«Π¨ΠΈΡ„Ρ€ ЦСзаря – Π²Π·Π»ΠΎΠΌΒ»

Π₯очСтся ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ частотный Π°Π½Π°Π»ΠΈΠ· производится Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎ частотС использования Π±ΡƒΠΊΠ², Π½ΠΎ ΠΈ ΠΏΠΎ частотС употрСблСния ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… слов ΠΈ Π΄Π°ΠΆΠ΅ Ρ„Ρ€Π°Π·. НапримСр, Ссли вСдСтся пСрСписка ΠΌΠ΅ΠΆΠ΄Ρƒ Π”ΠΈΠΌΠΎΠΉ ΠΈ НиколаСм, Ρ‚ΠΎ Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π”ΠΈΠΌΠ° Π½Π°Ρ‡Π½Π΅Ρ‚ своС ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ со слов «ДорогойНиколай» большС, Ρ‡Π΅ΠΌ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π½Π°Ρ‡Π½Π΅Ρ‚ Π΅Π³ΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹ΠΌ Π½Π°Π±ΠΎΡ€ΠΎΠΌ символов Β«Π«ΠšΡ€2!Β». ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ сами ΠΏΠΎΠΏΡ‹Ρ‚Π°Π΅Ρ‚Π΅ΡΡŒ Π²ΡΠΊΡ€Ρ‹Ρ‚ΡŒ Ρ‡Π΅ΠΉ-Ρ‚ΠΎ ΡˆΠΈΡ„Ρ€, ΠΏΠΎΠΌΠ½ΠΈΡ‚Π΅ ΠΎ Ρ‚Π°ΠΊΠΎΠΉ возмоТности, Π½ΠΎ Π½Π΅ Π·Π°Π±Ρ‹Π²Π°ΠΉΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΈ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π±ΠΎΠ»Π΅Π΅ слоТныС ΡˆΠΈΡ„Ρ€Ρ‹, Ρ‡Π΅ΠΌ рассмотрСнныС здСсь. Часто для ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ стойкости этих ΡˆΠΈΡ„Ρ€ΠΎΠ² ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠΈ сТатия ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π±Ρ‹Π»ΠΎ слоТнСС Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ частотным Π°Π½Π°Π»ΠΈΠ·ΠΎΠΌ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π² этом случаС частоты Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠΎΡ‡Ρ‚ΠΈ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’ΠΎΡ‚ ΠΈ Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΠ»Π°ΡΡŒ эта ΠΊΠ½ΠΈΠ³Π°. К соТалСнию, Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ всС Π½ΡŽΠ°Π½ΡΡ‹ ΠΈ интСрСсныС подробности программирования Π² Windows практичСски Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ (особСнно Π² ΠΊΠ½ΠΈΠ³Π΅ Ρ‚Π°ΠΊΠΎΠ³ΠΎ объСма). Но ΠΌΡ‹ надССмся, Ρ‡Ρ‚ΠΎ описанныС ΠΏΡ€ΠΈΠ΅ΠΌΡ‹, Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ использования возмоТностСй ΠΊΠ°ΠΊ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Deplhi, Ρ‚Π°ΠΊ ΠΈ Windows API хотя Π±Ρ‹ ΠΏΡ€ΠΎΠ»ΠΈΠ»ΠΈ свСт ΠΈ Π½Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ этой ОБ, ΠΈ Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ области, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ примСняСтся вСсьма ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ (Ρ€Π΅Ρ‡ΡŒ ΠΎ ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΠΈ).

ΠŸΡ€ΠΈ написании ΠΊΠ½ΠΈΠ³ΠΈ ΠΌΡ‹ ΡΡ‚Π°Ρ€Π°Π»ΠΈΡΡŒ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ количСство ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅. Насколько это Π½Π°ΠΌ ΡƒΠ΄Π°Π»ΠΎΡΡŒ, ΡΡƒΠ΄ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Π°ΠΌ. Нам лишь остаСтся ΠΏΠΎΠΆΠ΅Π»Π°Ρ‚ΡŒ Π²Π°ΠΌ успСхов, ΡƒΠ²Π°ΠΆΠ°Π΅ΠΌΡ‹ΠΉ Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»ΡŒ, Π² программистской ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ (Π½Π΅Π²Π°ΠΆΠ½ΠΎ, с использованиСм Delphi ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… языков ΠΈ срСд программирования).

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ 1 ΠšΠΎΠ΄Ρ‹ ΠΈ обозначСния основных клавиш

Π’ Ρ‚Π°Π±Π». П1.1 ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ ΠΊΠΎΠ΄Ρ‹, обозначСния цСлочислСнных констант ΠΈ описания основных клавиш.

Π’Π°Π±Π»ΠΈΡ†Π° П1

. 1 . ΠšΠΎΠ΄Ρ‹, обозначСния ΠΈ описания клавиш

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ 2 ΠžΠΊΠΎΠ½Π½Ρ‹Π΅ стили

Π’ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ прСдставлСны Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΎΠΊΠΎΠ½Π½Ρ‹Π΅ стили: ΠΎΠ±Ρ‰ΠΈΠ΅ (Ρ‚Π°Π±Π». П2.1), Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ (Ρ‚Π°Π±Π». П2.2), стили ΠΊΠ½ΠΎΠΏΠΎΠΊ (Ρ‚Π°Π±Π». П2.3), статичСских надписСй (Ρ‚Π°Π±Π». П2.4), тСкстовых ΠΏΠΎΠ»Π΅ΠΉ (Ρ‚Π°Π±Π». П2.5), списков (Ρ‚Π°Π±Π». П2.6) ΠΈ стили Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ…ΡΡ списков (Ρ‚Π°Π±Π». П2.7).

Π’Π°Π±Π»ΠΈΡ†Π° П2.1

. ΠžΠ±Ρ‰ΠΈΠ΅ ΠΎΠΊΠΎΠ½Π½Ρ‹Π΅ стили

Π’Π°Π±Π»ΠΈΡ†Π° П2.2. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠΊΠΎΠ½Π½Ρ‹Π΅ стили

Π’Π°Π±Π»ΠΈΡ†Π° П2.3. Π‘Ρ‚ΠΈΠ»ΠΈ ΠΊΠ½ΠΎΠΏΠΎΠΊ

Π’Π°Π±Π»ΠΈΡ†Π° П2.4. Π‘Ρ‚ΠΈΠ»ΠΈ статичСских надписСй

Π’Π°Π±Π»ΠΈΡ†Π° П2.5. Π‘Ρ‚ΠΈΠ»ΠΈ тСкстовых ΠΏΠΎΠ»Π΅ΠΉ

Π’Π°Π±Π»ΠΈΡ†Π° П2.6. Π‘Ρ‚ΠΈΠ»ΠΈ списков (ListBox)

Π’Π°Π±Π»ΠΈΡ†Π° П2.7. Π‘Ρ‚ΠΈΠ»ΠΈ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ…ΡΡ списков (ComboBox)

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ 3 БообщСния

Π’ Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ… Π΄Π°Π½Π½ΠΎΠ³ΠΎ прилоТСния приводятся обозначСния констант, описания сообщСний, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² wParam ΠΈ lParam сообщСний. Часто ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ wParam ΠΈΠ»ΠΈ 1 Par am ΡΠ²Π»ΡΡŽΡ‚ΡΡ указатСлями Π½Π° структуры. Для экономии мСста объявлСния этих структур Π½Π΅ приводятся: ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π² ΠΌΠΎΠ΄ΡƒΠ»Π΅ Windows.

БообщСния Ρ‚ΠΈΠΏΠ° WM_SETTEXT, WM_SETFONT ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… ΠΈΠΌ ΠΌΠΎΠ³ΡƒΡ‚ ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒΡΡ, Ρ‚Π°ΠΊ ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒΡΡ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для управлСния ΠΎΠΊΠ½Π°ΠΌΠΈ. Для Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° сообщСний, обозначСния ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ с GET, Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ возвращаСтся Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ сообщСния.

Π˜Ρ‚Π°ΠΊ, Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ прСдставлСны Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ с пСрСчислСниСм Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… сообщСний (Ρ‚Π°Π±Π». П3.1), ΡƒΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠΉ ΠΎΡ‚ элСмСнтов управлСния (Ρ‚Π°Π±Π». П3.2), сообщСний для управлСния ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ (Ρ‚Π°Π±Π». П3.Π—), статичСскими надписями (Ρ‚Π°Π±Π». П3.4), тСкстовым ΠΏΠΎΠ»Π΅ΠΌ (Ρ‚Π°Π±Π». П3.5), списком (Ρ‚Π°Π±Π». П3.6) ΠΈ сообщСний для управлСния Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΌΡΡ списком (Ρ‚Π°Π±Π». П3.7).

Π’Π°Π±Π»ΠΈΡ†Π° П3.1

. НСкоторыС часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ сообщСния

Π’Π°Π±Π»ΠΈΡ†Π° П3.2. УвСдомлСния ΠΎΡ‚ элСмСнтов управлСния

Π’Π°Π±Π»ΠΈΡ†Π° П3.3. БообщСния для управлСния ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ

Π’Π°Π±Π»ΠΈΡ†Π° П3.4. БообщСния для управлСния статичСскими надписями

Π’Π°Π±Π»ΠΈΡ†Π° П3.5. ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ сообщСния для управлСния тСкстовым ΠΏΠΎΠ»Π΅ΠΌ

Π’Π°Π±Π»ΠΈΡ†Π° П3.6. ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ сообщСния для управлСния списком (ListBox)

Π’Π°Π±Π»ΠΈΡ†Π° П3.7. ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ сообщСния для управлСния Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΌΡΡ списком (ComboBox)