Привет. var i: integer=1; s: AnsiString; procedure TForm1.Timer1Timer(Sender: TObject); begin s:=copy(memo1.text,0,length(memo1.text)-1); memo1.text:=s+memo2.text[i]+'_'; i:=i+1; end; end. Как сделать так, чтобы Мемо1 мерцало при перересовке?
Добрый день, maDByte! Во-первых, в чем цель перезаписи по таймеру? Если есть, то поставь второй таймер с меньшим периодом. Можно так: var ColorCount: Integer; При записи по первому таймеру устанавливаем ColorCount:=5; и Timer2.Enabled:=True; Обработчик Timer2Timer меняет цвет Memo1.Color и уменьшает ColorCount, и если он <=0 то выключается Ответ отправлен: 10.11.2003, 12:02 Отправитель: Boriss
Вопрос № 1093
Здравствуйте Сэр Генри. По поводу вопроса 1090. Просто когда-то лет 10 назад или чуть меньше прекрасно знал Basic(даже написал некое подобие операционной системы, ессно это был примитив, и она только чут-чуть облегчала работу), потом паскаль изучил, сейчас это уже не катит, хотелось бы изучить делфи. Но есть одно но, не знаю ни операторов(что бы писать свои обработчики событий. А если там есть стандартные, чего я пока не выяснил, я их всё равно применять вряд ли буду, т.к. хочется программировать, а не собирать программу по кускам), ни их правила записи, все книги которые я встречал начинаются и заканчиваются примерами с объяснениями как работают(А я ведь начинаю с нуля). В результате получается сложно отличить одно от другого. И большое спасибо за ссылки, сейчас по ним заскочу.
Приветствую Вас, Алексей! Если коротко - то Дельфи это тот-же самый Паскаль один к одному :). Естественно, раз по новому назвали, то есть ряд усовершенствований, например по сравнению с ВР7 введены операторы обработки ран-тайм ошибок TRY..EXCEPT. По моему мнению, это самое главное усовершенствование :). Я, в свое время, прошел тот-же путь: сначала Бэйсик, потом Паскаль, потом Дельфи (параллельно с Си, Си++, ФоксПро :). Самый мой любимый язык это Паскаль и дельфи. В изучении Паскаля и Дельфи мне хорошо помогли книги Фаронова, советую их приобрести. "Дельфи. Учебный куос" и "Дельфи. Руководство разработчика баз данных". После слова "Дельфи, там обычно стоит номер :). Книжки можно заказать на bolero.ru и ozone.ru. Ответ отправлен: 10.11.2003, 10:48 Отправитель: sir henry
Вопрос № 1094
Здравствуйте эксперты! Кто знает как можно определить в Edite какие символы были присвоенны программой (при создании), а какие были введенны пользователем? Мож можно как нить закрепить за каждым за edito_м какой нить байтовый массив в котором отображался бы статус символа? 1 например если введен пользователем, а 0 присвоен программой. Очень надеюсь, что Вам этот вопрос покажется достаточно интересным и вы на него ответите. :) Заранее благодарен.
Здравствуйте, _hunter_! Да так себе вопрос... : Edit отрабатывает события OnKeyPress и OnKeyDown - по ним и надо отслеживать, что вводится с клавиатуры, а OnChange вызывается при каждом изменении. Там можно обрабатывать любые изменения. И без нитей хорошо сработает Ответ отправлен: 10.11.2003, 12:18 Отправитель: Boriss Отвечает sir henry
Добрый день, _hunter_! У компонента Edit есть событие OnKeyPress. Через него и можно отслеживать, какие клавиши жал пользователь в Edite'е. Ответ отправлен: 10.11.2003, 12:37 Отправитель: sir henry
Вопрос № 1095
Уважаемый ЭКСперты! Подскажите пожалуйста, как можно анимировать свою форму? Т.е. чтобы при загрузке она как-нибудь красиво и необычно появлялась?
Здравствуйте, D.M.! Обратите внимание на то, как появляются игры, пока идет загрузка. Это или проявление рисунка, или анимация. Что Вам больше по душе? А необычно.... пусть она комп выключает :)) Ответ отправлен: 10.11.2003, 19:00 Отправитель: Boriss Отвечает samum2000
Доброе время суток, D.M.! В общем случае тебе надо обрабатывать два события формы - OnShow и OnClose, в которых ты можешь творить со своей формой все, что захочешь. Например: procedure TForm1.FormShow(Sender: TObject); var RS, RN: TRect; begin RS := Rect(0, 0, 0, 0); RN := Form1.BoundsRect; DrawAnimatedRects(GetDesktopWindow, IDANI_CAPTION, RS, RN); end; procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); var RSmall, RN: TRect; begin RectSmall := Rect(0, 0, 0, 0); RectNormal := Form1.BoundsRect; DrawAnimatedRects(GetDesktopWindow, IDANI_CAPTION, RN, RS); end;
Ответ отправлен: 12.11.2003, 12:57 Отправитель: samum2000 Отвечает Bob Johnson
Здравствуйте, D.M.! В цикле изменяй какие-либо параметры формы. Только не забывай каждый раз вызывать Application.ProcessMessages (). For i := 50 to 200 do begin Form.Width := i; Application.ProcessMessages (); Sleep (10); end;
* EMan1.5: ---===*** The game we play ***===---
Ответ отправлен: 12.11.2003, 00:59 Отправитель: Bob Johnson
Форма отправки вопроса
Внимание!
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+
или отправлять вопросы с сайта по адресу:
http://rusfaq.ru/cgi-bin/Message.cgi.