ПЕРЕЛІК ДИСЦИПЛІН:
  • Адміністративне право
  • Арбітражний процес
  • Архітектура
  • Астрологія
  • Астрономія
  • Банківська справа
  • Безпека життєдіяльності
  • Біографії
  • Біологія
  • Біологія і хімія
  • Ботаніка та сільське гос-во
  • Бухгалтерський облік і аудит
  • Валютні відносини
  • Ветеринарія
  • Військова кафедра
  • Географія
  • Геодезія
  • Геологія
  • Етика
  • Держава і право
  • Цивільне право і процес
  • Діловодство
  • Гроші та кредит
  • Природничі науки
  • Журналістика
  • Екологія
  • Видавнича справа та поліграфія
  • Інвестиції
  • Іноземна мова
  • Інформатика
  • Інформатика, програмування
  • Юрист по наследству
  • Історичні особистості
  • Історія
  • Історія техніки
  • Кибернетика
  • Комунікації і зв'язок
  • Комп'ютерні науки
  • Косметологія
  • Короткий зміст творів
  • Криміналістика
  • Кримінологія
  • Криптология
  • Кулінарія
  • Культура і мистецтво
  • Культурологія
  • Російська література
  • Література і російська мова
  • Логіка
  • Логістика
  • Маркетинг
  • Математика
  • Медицина, здоров'я
  • Медичні науки
  • Міжнародне публічне право
  • Міжнародне приватне право
  • Міжнародні відносини
  • Менеджмент
  • Металургія
  • Москвоведение
  • Мовознавство
  • Музика
  • Муніципальне право
  • Податки, оподаткування
  •  
    Бесплатные рефераты
     

     

     

     

     

     

         
     
    Виведення на екран поточний каталог в графічному режимі (з скролінгом )
         

     

    Інформатика, програмування

    Міністерство освіти Російської Федерації

    Інститут перепідготовки кадрів

    Уральського державного технічного університету

    Кафедра мікропроцесорної техніки

    Курсова робота

    На тему: Виведення на екран поточний каталог в графічному режимі (з скролінгом)

    Керівник В.П. Кулюкін

    Студент гр.СП-923

    г.Нягань

    2001р.

    ЗМІСТ

    1. ВСТУП 3

    2. ОСНОВНА ЧАСТИНА 4

    3. ВИСНОВОК 17

    4. БІБЛІОГРАФІЧНИЙ СПИСОК 18

    Введення.

    Асемблер-один з найстаріших з існуючих сьогодні мовпрограммірованія.Когда-то це був самий основна мова, без якого не можнабуло змусити комп'ютер зробити що-небудь корисне.
    Поступово ситуація змінювалася. З'явилися більш зручні засоби спілкування зкомп'ютером. Але на відміну від інших мов асемблер не вмирав, більш тоговін немогу цього зробити в принципі.
    Якщо коротко, то асемблер-це символічне подання машинногомови. Всі процеси в машині на найнижчому, апаратному рівні приводятьсяв дію тільки командами машінногшо мови.
    Звідси зрозуміло, що незважаючи на загальну назву, мова Асемблера для кожноготипу комп'ютера свій. Це стосується і зовнішнього вигляду програм, написаних на
    Асемблері, і ідей, відображенням яких ця мова є.

    Опис програми.

    Windows-додаток на асемблері містить один сегмент даних. Data іодин сегмент коду. code. У програмі використано 28 функцій API. Параметрицих функцій передаються через стек, результат повертається в регістрі ЕАХ.
    Регістр mode1 задає модуль сегментації (flat) і стиль генерації коду привході до процедури програми і виході з них (stdcall). Модель пам'яті flatпозначає плоску модель пам'яті. Відповідно до цієї моделі компіляторстворює програму, яка містить 32-бітовий сегмент для даних і кодупрограми. Вказівка цієї моделі пам'яті змушує компонувальник створитивиконуваний файл з розширенням. exe. Параметр stdcall визначає порядокпередачі параметрів через стек справа наліво.
    Директива include включае в програму файл win32.inc.
    Функції Win32 API, що використовуються в програмі повинні бути оголошені за допомогоюдирективи extrn для того, щоб компілятор міг згенерувати правильнийкод.
    Рядки 35-68 містять опис сегмента даних, в якому визначаютьсязмінні і екземпляри структур, що використовуються в програмі. Для запускудодатки під управлінням Windows необхідно виконати ряд кроків,зміст яких полягає у виклику ряду функцій Win32.API:
    * Виконання стартового коду;
    * Виконання головної функції, що виконує наступні дії;
    . Реєструє клас вікна;
    . Створює вікно;
    . Відображає вікно;
    . Запускає цикл обробки повідомлень;
    . Завершує цикл обробки повідомлення;
    * Організація обробки повідомлень в віконної процедури.
    Віконна процедура визначає те, що виводиться в робочу область вікна, іте, як вікна реагувати на призначений для користувача ввод.Созданіе вікна виконуєтьсяфункцією Win32 API CreateWindowEx. Для цього їй потрібно передати безлічпараметрів. Для створення вікна необхідні 2 кроки: спочатку визначення класувікна, а лише потім безпосередньо його створення.
    Після виконання функції CreateWindowExA створюється вікно, але це покивідбудеться тільки лише всередині самої Windows, - на екрані це нове вікнопоки ще не відобразиться. Для того щоб створене вікно з'явилося на екрані,застосовуємо функцію ShowWindowA. Як параметри цієї функціїпередається дескриптор hWnd вікна, яке необхідно відобразити на екрані, іконстанта, що задає початковий вигляд вікна.
    Програма може мати кілька віконних функцій. Їх кількістьвизначається кількістю класів вікон, зареєстрованих в системіфункцією Register Class (Ex).
    Windows вимагає, щоб віконна функція зберігала значення регістрів ebi,edi і esi, тому що віконна функція повинна бути рекурсівной.По завершенняроботи віконна функція формує значення в регістрі EAX. Якщо повідомленняоброблялося в віконної функції, то в eax необхідно помістити нульовезначення.
    Смуги прокрутки - етоелементи управління, призначені длярегулювання вертикального і горизонтального положення на екраніасоційованих з ними об'єктів. Різниця між смугами прокрутки,що є частиною вікна і смугами прокрутки - дочірніми вікнами, полягає вте, що дочірні вікна мають вбудований клавіатурний інтерфейс, що дозволяєвпливати на смугу прокручування за допомогою клавіатури. Повідомлення
    SB_LINEUP генерується обома смугами при натисканні на верхній або лівоїстрілкою, а повідомлення SB_LINEDOWN - у разі натискання нижньої або правоюстрілки. Щоб смуга прокручування функціонувала коректно необхідновизначити для неї діапозон прокрутки і задати позицію бігунка.
    Вбудована смуга прокрутки, на жаль, дісталася лише управління здопомогою курсору миші. За замовчуванням для смуг прокручування, які є частиноювікна, цей діапазон (число кроків мужду крайніми позиціями бігунка) визначенийвід 0 до 100. Для того, щоб змінити діапозон прокручування необхідно викликатифункцію SetScrollRange
    У Windows не дивлячись на те, що операції введення здійснювані додатком,обмежені робочою областю його вікна, програма повинна бути готова оновитиінформацію в цій області на вимогу системи.
    У програмі використаний ряд функцій Windows API, хто ніби то єосновними, коли мова йде про віконних процедурах (CreateWindow, ShowWindowта ін.)
    Розглянемо докладніше процедури, які організовані на основі стилю вікна.
    Короткий опис процедур:
    InvalidateRect - ця функція додає прямокутник до області модифікаціївказаних вікон. Область модифікації є частиною області клієнтськоговікна, яка повинна бути повторно перересована.
    Параметри:hWnd визначає вікно, чия область змінилася, якщо цей параметр дорівнює 0,то Windows змінює всі вікна і посилає віконної процедури повідомлення
    * WM_ERASEBKGND and WM_NCPAINT *;lpRect покажчик на структуру RECT, яка містить координатиклієнтського прямокутника, який буде додано до областімодіфікаціібласті. Якщо цей параметр дорівнює нуль, то вся область клієнтадодається до області модифікації.
    BErase визначає чи повинен бути стертий фон в межах області модифікації.
    Якщо цей параметр true, фон стирається при виклику BeginPaint

    GetClientRect - відшукує координати області клієнта вікна. Клієнтськікоординати визначають координати верхнього лівого і правого нижнього кутів.
    Координати верхнього лівого кута рівні (0,0).
    Параметри:hWnd: визначає вікно, координати якого треба знайти.lpRect: вказівник на структуру, яка отримає коорідінати.
    При правильному завершенні функції повертається значення, відмінне від 0.
    SetScrollRange - функція встановлює мінімальне та максимальне значенняпозицій для вказаної смуги прокручування. Може також використовуватися дляприховування стандартної смуги прокручування.

    Параметри:hWnd: визначає, що це стандартне вікно зі смугою прокрутки або простосмуга прокрутки, в залежності від значення параметра nBar.nBar: визначає смугу прокручування. Цей параметр може приймати різнізначення. Він встановлює діапазон управління, якщо смуга вікно.
    Встановлює діапазон стандартної вертикальної або горизонтальної смугипрокручування. Визначає мінімальну прокручуємо позицію. Визначає,чи повинна бути смуга прокручування повторно відтягнути. Якщо правда, то так,повинна бути.

    ScrollWindow - функція, яка прокручує зміст області клієнтавказаного вікна.hWnd: визначає дескриптор вікна, де клієнтська область повинна бутипрокручена.
    XAmount: визначає склад модуля для горизонтального прокручування.
    YAmount: визначає склад модуля для вертикальної прокрутки.lpRect: вказівник на структуру RECT, що визначає частину області клієнтадля прокручування. Якщо цей параметр дорівнює 0, то прокручується вся клієнтськаобластьlpClipRect: вказівник на структуру RECT, що містить координатипрямокутника відсікання.
    Якщо функція виконана правильно, то вона повертає значення, відмінне віднуля.

    SetScrollPos - функція, яка встановлює позицію бігунка у зазначенійсмузі прокрутки і змінює цю позицію.

    Параметри:hWnd: ідентифікує смугу прокручування або вікно зі стандартною смугоюпрокручування, залежно від значення параметра nBar.nBar: визначає смугу прокручування.
    Цей параметр може приймати одне з наступних значень:
    - SB_CTL - встановлює позицію бігунка в управлінні смуги прокрутки,hWnd - дискриптор смуги прокручування.
    - SB_GORS - встановлює позицію бігунка в стандартній горизонтальноїсмузі прокручування.
    - SB_VERT - встановлює позицію бігунка в стандартній вертикальноїсмузі прокручування.nPos: параметр, що визначає нову позицію бігунка. Вона повинна бути вмежах прокручуємо діапазону.bRedraw: параметр, що визначає відтягнути чи повторно смуга прокрутки, длятого щоб відобразити нову позицію бігунка. Якщо цей параметр істина, тосмуга прокручування повторно відтягнути.

    Якщо функція неправильно завершена, то повертається нуль.

    1. p486; ця директива дозволяє транслятору

    ; обробляти команди процесора i486
    2. jumps; транслятор автоматично перетворює

    ; команду умовної передачі управління в комбінацію

    ; умовної і безумовної команд, якщо умовна команда в

    ; cілу обмеженості області свого дії не

    ; забезпечує передачу управління за потрібною адресою

    3. model flat, STDCALL; вибирається модель пам'яті для 32 -

    ; розрядного програмування та правила

    ; передачі параметрів функцій STDCALL,

    ; далі діють за замовчуванням

    4. include win32.inc; файл, що містить описи структур

    ; даних і констант
    5. L equ; послідовності символів LARGE,

    ; що є ім'ям операції,

    ; оголошує наступний за нею операнд; 32 - розрядним, присвоюється ім'я L
    6. extrn ginPaint: PROC; опис імпортованих з

    ; Windows функцій
    7. extrn CreateWindowExA: PROC
    8. extrn DefWindowProcA: PROC
    9. extrn DispatchMessageA: PROC
    10. extrn EndPaint: PROC
    11. extrn ExitProcess: PROC
    12. extrn GetMessageA: PROC
    13. extrn GetModuleHandleA: PROC
    14. extrn LoadCursorA: PROC
    15. extrn LoadIconA: PROC
    16. extrn PostQuitMessage: PROC
    17. extrn RegisterClassA: PROC
    18. extrn ShowWindow: PROC
    19. extrn TextOutA: PROC
    20. extrn UpdateWindow: PROC
    21. extrn GetTextMetricsA: PROC
    22. extrn SetCurrentDirectoryA: PROC
    23. extrn FindFirstFileA: PROC
    24. extrn FindNextFileA: PROC
    25. extrn FindClose: PROC
    26. extrn SetScrollPos: PROC
    27. extrn InvalidateRect: PROC
    28. extrn GetClientRect: PROC
    29. extrn ScrollWindow: PROC
    30. extrn GetDC: PROC
    31. extrn ReleaseDC: PROC
    32. extrn SetScrollRange: PROC
    33. extrn TranslateMessage: PROC
    34. . data; зумовлене ім'я,

    ; що означає початок сегменту даних
    35. hFindFile dd 0
    36. newhwnd dd 0
    37. wc WNDCLASS
    38. qq1 db'@@@@'< br>39. lppaint PAINTSTRUCT
    40. qq2 db'@@@@'< br>41. msg MSGSTRUCT
    42. tm TEXTMETRIC
    43. rc RECT
    44. charht dd 0
    45. hInst dd 0
    46. fl dw 0
    47. szTitleName db 'Це курсової', 0
    48. szClassName db 'ASMCLASS32', 0
    49. Buffer db 'Пам'ятай про порядок передачі параметрів функції!', 0
    50. buf_v db 260 dup (0)
    51. num dd 0

    52. ;##########################< br>53. lpPathName dd 0

    54. szP db 0
    55. w32fd WIN32_FIND_DATA
    56. lpFileName dd 0
    57. fn db "*.*", 0
    58. ;##########################< br>59. nVertDifference dd 0
    60. nVertPosition dd 0
    61. cyStep dd 0
    62. nFirst dd 0
    63. nLast dd 0
    64. cyMax dd 0
    65. cyPos dd 0
    66. cory dd 5
    67. count dd 0
    68. py dd 0
    69. . code; зумовлене ім'я, що означає

    ; початок сегменту коду
    70. start:
    71. push L 0
    72. call GetModuleHandleA; повертає базовий адреса модуля,

    ; вказує, куди був відображений в адресному

    ; просторі процесу EXE-або DLL файлу
    73. mov [hInst], eax; результат виконання функціїзберігається в якості змінної hInst

    74. reg_class:
    75. ;************************************************

    ; ініціалізація структури WNDCLASS
    76. mov [wc.clsStyle], CS_HREDRAW + CS_VREDRAW; стиль класу
    77. mov [wc.clsLpfnWndProc], offset WndProc; адресу віконної процедури

    78. mov wc.clsCbClsExtra], 0; визначає додаткове число

    ; байтів для структури класу вікна,

    ; які система резервує

    ; у службовій пам'яті для всіх вікон

    ; цього класу
    79. mov [wc.clsCbWndExtra], 0; задає в байтах обсяг пам'яті,

    ; Резервованої системою в кінці

    ; кожної такої структури кожного вікна

    ; даного класу

    80. mov eax, [hInst]
    81. mov [wc.clsHInstance], eax; містить базовий адреса даного

    ; EXE-файлу, отриманий за допомогою

    ; функції GetModuleHandle

    82. call LoadIconA, 0, IDI_APPLICATION; задана за замовчуванням

    ; піктограма
    83. mov [wc.clsHIcon], eax

    84. call LoadCursorA, 0, IDC_ARROW; стандартна стрілка курсору
    85. mov [wc.clsHCursor], eax

    86. mov [wc.clsHbrBackground], COLOR_WINDOW 1
    87. mov dword ptr [wc.clsLpszMenuName], 0
    88. mov dword ptr [wc.clsLpszClassName], offset szClassName

    89. call RegisterClassA, offset wc; реєструє клас вікна,

    ; атрибути якого визначені; в структурі WNDCLASS

    90. call CreateWindowExA, 0, offset szClassName, offset szTitleName,

    ; створює вікно, що має вказаний тип

    , і що належить вказаному класу
    91. WS_OVERLAPPEDWINDOW OR WS_VSCROLL, CW_USEDEFAULT,
    92. CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, 0,0,
    93. [hInst], 0

    94. mov [newhwnd], eax

    95. call ShowWindow, [newhwnd], SW_SHOWNORMAL; показує яким

    ; чином має бути

    ; показано вікно
    96. call UpdateWindow, [newhwnd]; оновлює зображення

    ; вікна, посилаючи

    ; повідомлення WM_PAINT

    ; віконної процедурою, якщо

    ; область модифікації

    ; вікна не порожня

    97. msg_loop:
    98. call GetMessageA, offset msg, 0, 0, 0; зчитує повідомлення

    ; черги повідомлень

    ; прикладної задачі
    99 .. if eax! = 0
    100. call DispatchMessageA, offset msg; передає повідомлення

    ; віконної процедури
    101. call TranslateMessage, offset msg
    102. jmp msg_loop
    103. ;. Endif
    104. call ExitProcess, [msg.msWPARAM];


    105. ;*************************************************
    106. ; Віконна процедура
    107. ;************************************************* *
    108. WndProc proc uses ebx edi esi, hwnd: DWORD, wmsg: DWORD,
    109. wparam: DWORD, lparam: DWORD

    110. LOCAL hDC: DWORD

    111. cmp [wmsg], WM_DESTROY; надсилається віконної процедури відразу

    ; ж після закриття вікна
    112. je wmdestroy
    113. cmp [wmsg], WM_SIZE; надсилається віконної процедури після того,

    ; як змінився розмір вікна
    114. je wmsize
    115. cmp [wmsg], WM_CREATE; передача віконної процедури нового

    ; вікна після того, як вікно створене,

    ; але перш ніж вікно стало видимим

    116. je wmcreate
    117. cmp [wmsg], WM_PAINT; забезпечують перемальовування вікна, коли

    ; частина або вся робоча область вікна

    ; стає недійсною
    118. je wmpaint
    119. cmp [wmsg], WM_VSCROLL;
    120. je wmscroll
    121. jmp defwndproc

    122. wmcreate:
    123. call GetDC, [hwnd]; дескриптор контекстного пристрої
    124. mov [hDC], eax

    125. call GetTextMetricsA, [hDC], offset tm

    126. mov ebx, 0
    127. mov bx, [tm.tmExtLeading]; межстрочное відстань
    128. add bx, [tm.tmHeight]; висота (добавка до координаті рядка)
    129. mov [charht], ebx
    130. call ReleaseDC, [hwnd], [hDC]; відмова від контекстного пристрої
    131. mov eax, 0
    132. jmp finish
    133. defwndproc:
    134. call DefWindowProcA, [hwnd], [wmsg], [wparam], [lparam]
    135. jmp finish


    136. wmscroll:
    137. call GetClientRect, [hwnd], offset rc; визначення клієнтської

    ; області вікна
    138. movzx eax, [word ptr wparam]; перетворення вмісту wparam в

    ; подвійне слово
    139. cmp eax, SB_LINEDOWN; клацання миші на стрілкою вниз,

    ; приводить до прокручування на один рядок

    ; вниз
    140. je sblinedown
    141. cmp eax, SB_LINEUP; клацання миші на стрілкою вгору,

    ; приводить до прокручування на один рядок

    ; вгору

    142. je sblineup
    143. cmp eax, SB_ENDSCROLL; відпускання будь-якого органу управління

    ; відпущена клавіша миші після

    ; утримування її на смузі прокручування
    144. je bp3

    145. sblinedown:
    146. mov [cyStep], 1; додати крок
    147. jmp endvscroll_1

    148. sblineup:
    149. mov [cyStep], -1
    150. jmp endvscroll


    151. endvscroll:

    152. cmp [cyPos], 0
    153. je bp3
    154. endvscroll_1: mov eax, [cyPos]; посилаємо позицію бігунка в

    ; регістр
    155. add eax, [cyStep]
    156. mov [cyPos], eax
    157. mov eax, 0
    158. sbb eax, [charht]; розрахунок міжрядкового відстані
    159. mov ecx, [cyStep]
    160. mov edx, 0
    161. mul ecx
    162. mov ecx, eax
    163. call ScrollWindow, [hwnd], 0, ecx, 0,0; визначаємо дескриптор вікна,

    ; де клієнтська область повинна

    ; бути прокручена
    164. call InvalidateRect, [hwnd], offset rc, TRUE; визначаємо вікно з

    ; змінилася

    ; областю
    165. call SetScrollPos, [hwnd], SB_VERT, [cyPos], TRUE; встановлення

    ; позиції бігунка в

    ; стандартної

    ; вертикальної < p>; смузі прокрутки

    166. call UpdateWindow, [hwnd]; оновлення зображення вікна,

    ; якщо область не порожня

    167. bp3: mov eax, 0
    168. jmp finish

    169. wmdestroy:
    170. call PostQuitMessage, 0
    171. mov eax, 0
    172. jmp finish

    173. wmsize:; для перемальовування нового розміру вікна

    ; значення старшого слова означає висоту

    ; клієнтської частини
    174. mov eax, [lparam]
    175. mov cl, 16
    176. rcr eax, cl
    177. and eax, 0ffffh
    178. mov dx, 0
    179. mov cx, word ptr [charht]
    180. div cx
    181. movzx ecx, ax
    182. mov eax, 101
    183. sbb eax, ecx
    184. cmp eax, 0
    185. ja www1
    186. mov eax, 0
    187. www1: mov [cyMax], ecx
    188. call FindFirstFileA, offset fn, offset w32fd
    189. mov [hFindFile], eax
    190. mov esi, 1
    191. s_m4:
    192. call FindNextFileA, [hFindFile], offset w32fd
    193. cmp eax, 0
    194. je s_m5
    195. inc esi
    196. jmp s_m4
    197. s_m5: mov [nLast], esi
    198. mov eax, [cyMax]
    199. cmp eax, [cyPos]
    200. ja www2
    201. mov [cyPos], eax
    202. www2: push FALSE
    203. push esi
    204. push L 0
    205. push SB_VERT
    206. push [hwnd]
    207. call SetScrollRange
    208. push TRUE
    209. push [cyPos]
    210. push SB_VERT
    211. push [hwnd]
    212. call SetScrollPos
    213. mov eax, 0
    214. jmp finish

    215. wmpaint:
    216. call BeginPaint, [hwnd], offset lppaint; отримали контекст

    ; пристрої
    217. mov [hDC], eax
    218. mov eax, [cyPos]; початкова позиція бігунка
    219. mov ecx, [charht]; отримали координату виводу в пікселях
    220. mov dx, 0
    221. mul cx
    222. movzx ecx, ax
    223. mov [cory], 5; занесли по у -5
    224. mov ecx, 1; занесли по x -1
    225. call FindFirstFileA, offset fn, offset w32fd; відшукуємо

    ; перша

    ; файл
    226. mov [hFindFile], eax
    227. cmp ecx, [cyPos]
    228. jne qqq1
    229. mov esi, 0
    230. m3: mov dl, w32fd.cFileName [esi]; вивід першого рядка
    231. cmp dl, 0
    232. je m2
    233. mov buf_v [esi], dl
    234. inc esi
    235. jmp m3
    236. cmp [cyPos], 0; якщо не нуль, то перехід на мітку

    ; qqql
    237. jne qqq1
    238. m2:
    239. mov [num], esi
    240. call TextOutA, [hDC], 5, [cory], offset buf_v, [num]; висновок

    ; перший

    ; знайденого

    ; файлу
    241. qqq1: mov ebx, 1
    242. m6:
    243. call FindNextFileA, [hFindFile], offset w32fd; Наступне фото
    244. cmp eax, 0; перевірка для

    ; останнього файлу
    245. je kon
    246. mov esi, 0
    247. mov edi, 0
    248. m4: mov dl, w32fd.cFileName [edi]; отримали ім'я

    ; файлу
    249. cmp dl, 0
    250. je m5
    251. mov buf_v [esi], dl
    252. inc edi
    253. inc esi
    254. jmp m4
    255. m5: cmp ebx, [cyPos]
    256. jb qqq2
    257. mov eax, [charht]
    258. add [cory], eax
    259. call TextOutA, [hDC], 5, [cory], offset buf_v, esi; висновок

    ; нового рядка
    260. qqq2: inc ebx; лічильник рядків
    261. jmp m6
    262. kon: call EndPaint, [hwnd], offset lppaint; віддали

    ; контекст

    ; пристрої та

    ; перейшли до циклу

    ; обробки повідомлень
    263. mov eax, 0
    264. jmp finish

    265. finish:
    266. ret
    267. WndProc endp
    268. public WndProc
    269. end start; кінець програми.

    Висновок.

    Моя задача полягала у створенні навчальної програми, яка демонструєвиведення на екран в графічному режимі заданий каталог з скролінгом. Зсмугами прокручування пов'язаний єдиний недолік, який полягає вте, що неможливо управляти програмами без миші. Але так як більшістьдодатків Windows підтримують роботу з мишею, це навряд чи варто вважатисерйозним недоліком. Необхідно було виконати цілий ряд дій, першніж додаток змогло адекватно реагувати на повідомлення, що посилаютьсясмугами прокручування.

    Бібліографічний список.

    1. Windows 98: керівництво розробника: Пер.с англ. - К.: Видавнича група BHV, 1999. - T.1. -672 C.

    2. Зубков С.В. Asstmbler. Для DOC, Windows Unix. M.: ДМК, 1999. 640 с.

    3.
    -----------------------< br>


         
     
         
    Реферат Банк
     
    Рефераты
     
    Бесплатные рефераты
     

     

     

     

     

     

     

     
     
     
      Все права защищены. Reff.net.ua - українські реферати ! DMCA.com Protection Status