Освой компьютер
Это и есть строковый gadget. Подведите к нему указатель
мыши и нажмите левую кнопку, после чего Вы сможете редактировать текст
gadget\'а. Зафиксировать изменения буфера текста можно либо нажатием клавиши
, либо нажатием левой кнопки мыши за пределами gadget\'а.
А теперь измените слово, определяющее флаги активации, на $802, а также
буфер strbuffer на \"dc.l 0,0,0,0\". После запуска полученной программы Вы
сможете вводить только цифры (при попытке ввести любой другой символ экран
будет \"мигать\"). Это сигнализирует о том, что активизированный gadget
является целочисленным.
Введите какое-нибудь число, и после завершения программы распечатайте
содержимое структуры StrInfo. Восьмое слово (двойное) этой структуры как
раз будет содержать введенное Вами число. 7.9.3. Пропорциональные gadget\'ы. Вы наверняка знакомы с устройствами, в которых для определения некоторых
параметров используются \"движки\" (sliders). Например, в магнитофонах движки
могут использоваться для задания громкости и других характеристик звука.
Согласитесь, что такой способ задания параметров в некоторых случаях
оказывается намного удобнее, чем обычный ввод чисел. Система Intuition
позволяет создавать на экране Amiga \"движковые\" устройства, управляемые с
помощью мыши. Для этого используются gadget\'ы специального типа - пропорциональные.
Пропорциональный gadget представляет собой прямоугольную область, внутри
которой располагается некоторый символ. Этот символ можно перемещать в
пределах gadget\'а в горизонтальном и/или вертикальном направлении,
\"захватив\" его мышью. Размеры поля gadget\'а могут задаваться относительно
размеров окна, так что при изменении размеров окна gadget будет
автоматически масштабироваться.
Особенности работы с пропорциональными gadget\'ами лучше всего рассматривать
на примерах. Предположим, что нам нужно создать простой горизонтальный движок.
Для этого нам понадобится блок данных, описывающий gadget. Формат этого
блока совпадает с описанным в предыдущих пунктах, отличия встречаются лишь
при интерпретации некоторых параметров.
AMIGA: ПРОГРАММИРОВАНИЕ НА АССЕМБЛЕРЕ.
|