DELPHI: Сам cебе программист - FAQ, Советы начинающим,Cтатьи | |
Программа первая: да всё тут ясно! Ясно..?Команда ЯСНО дана для всех!! | |
Главная
В Дело-1
Мои программы
FAQ
Рассылка
3D+Delphi
Антиглюк
Прикольно?
Заказ!
Кто мы?
Перевод:
System Parameters Info |
У нас уже есть заготовка программы - она может сохранять текст и список адресов, но пока она не прячется и не вылезает по нашему желанию, а просто загромождает место на панели задач и рабочем столе. Ну что, в бой! |
if (mouse.CursorPos.X ‹3) and (mouse.CursorPos.Y ‹3) then form1.position:=poscreencenter; Если (мышка.положениекурсора.Х меньше 3) и (мышка.положениекурсора.Y меньше 3) то форма1.положение ПРИСВОИТЬ ЦентрЭкрана; ( := )-оператор присваивания, если кто не знал, например: Caption:=Combobox1.text Заголовок := Комбобокс.текстА где до этого будет окно программы? Например, за левым краем. Для этого идём в инспектор обьектов, выбираем Form1, закладку "События", весело щёлкаем 2 раза в поле около "OnCreate"="НаСоздании", оказываемся в редакторе кода, и вводим:
Left:=-width; Cлева(расстояние) присвоить -(минус)ширина ;Теперь, при создании окна оно окажется за левым краем. А если нам нужно, чтобы окно появлялось, если мышка у правого края? Тогда обработчике события Timer1Timer пишем:
if mouse.cursorpos.x > screen.width-2 then form1.Position:=poscreencenter; Если мышка.положениекурсора меньше экран.ширина минус 2 тогда форма1.положение ПРИСВОИТЬ ЦентрЭкрана;Кстати, о том, что мы присвоили положение окна "ЦентрЭкрана=poscreencenter", забывать не стоит - если не установить друое положение, то форма откажеся добровольно покидать его. Сделаем так, чтобы при нажатии на ESCAPE окно снова пряталось.
form1.position:=poDesigned; Left:=-width; То есто положение формы будет "как при дизайне", но расстояние слева будет равно "минус ширина".Что нехватает для полного счастья?
memo1.lines.savetofile(extractfilepath(application.exename)+'ТЕКСТ.txt'); combobox1.items.savetofile(extractfilepath(application.exename)+'Адреса.txt');Но ещё хорошо бы сделать, чтобы это всё само и загружалось! В обработчике OnСreate (там где первый раз писали "Left:=-width"), добавляем(сразу после "Begin" или "Left:=-width"):
if FileExists(extractfilepath(application.exename)+'ТЕКСТ.txt') and FileExists(extractfilepath(application.exename)+'Адреса.txt') then begin memo1.Lines.LoadFromFile(extractfilepath(application.exename)+'ТЕКСТ.txt'); combobox1.Items.LoadFromFile(extractfilepath(application.exename)+'Адреса.txt'); end;
ShowWindow(application.handle, sw_hide); ПоказатьОкно(Программа.Оперировать(рука,управление,"Хендл"), ПО_спрятать);На всякий пожарный случай можно продублировать это в таймере :о)