Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Форма и панель задач [D7, Win2k, WinXP]


linox ©   (2007-02-08 15:35:00) 

Добрый день. Вопрос:
Нужно сделать информационную форму. Например, есть текущее время и время окончания (рабочего дня :-)), и должно писать на лейбле сколько осталось.  Задача:
1. Чтобы форма отображалась в вверху окна
2. Чтобы небыло видно формы на панели задач
3. Чтобы на форме не было кнопок (свернуть, закрыть, максимизировать). Какие свойства нужно поменять?


linox   (2007-02-09 13:25:00) [1]

2 RASkov:
БОЛЬШОЕ спасибо.


RASkov   (2007-02-08 22:58:00) [2]

> [0] linox   (08.02.07 15:35)

program TimeWorkToScreen;
uses SysUtils, Windows, Graphics;

var Tm: TDateTime;
DC: HDC;
Cnv: TCanvas;
S: String;
X: Integer;
begin
 DC:=GetDC(0);
 Cnv:=TCanvas.Create;
 Cnv.Handle:=DC;
 Cnv.Brush.Color:=clNavy;
 Cnv.Font.Name:='Times new roman';
 Cnv.Font.Style:=[fsBold];
 Cnv.Font.Color:=clYellow;
 Cnv.Font.Size:=12;
 While True do begin
  Tm:=StrToTime('18:00');
  if Time>Tm then S:='Рабочий день окончен'
   else S:=FormatDateTime(TimeToStr(Time)+'> До конца рабочего дня осталось: h ч. mm м. ss с.', Tm-Time);
  X:=(GetSystemMetrics(SM_CXSCREEN)-Cnv.TextWidth(S)) div 2;
  Cnv.TextOut(X, 3, S);
  Sleep(5);
 end;
 ReleaseDC(0, DC);
end.


Evgeniy.G   (2007-02-08 16:51:00) [3]

to: C@N
>ну как я сказал... ShowWindow(Application.Handle, SW_HIDE);
>API :)))
Кто сказал? Мой пост был первым :)

to: linox
>начнем дальше:
>MainForm.Align := alTop; - растягивает форму на всю ширину экрана, а мне >так не нужно....
>MainForm..BorderIcons := []; - это я сделал в свойвствах форми (нон)

Так перед постановкой вопроса - научитесь излагать свои задачи!


C@N   (2007-02-08 16:35:00) [4]

ну как я сказал... ShowWindow(Application.Handle, SW_HIDE);
API :)))


linox   (2007-02-08 16:33:00) [5]

начнем дальше:
MainForm.Align := alTop; - растягивает форму на всю ширину экрана, а мне так не нужно....
MainForm..BorderIcons := []; - это я сделал в свойвствах форми (нон)


C@N   (2007-02-08 16:33:00) [6]

1) Form1.left:=X;  form1.top:=Y;
2) Form1.Hide; или form1.visible:=false; но при показе любой формы у тя будет вылезать на панель задач... хотя я как-то извращался и вроде даже вышло... но не помню как делал... тои через API толи еще как-то (((
3)Form1.borderstyle:=bsNone

ЗЫ лучше иконку в трей с хинтом загони... лучшее будетЪ )))


Evgeniy.G   (2007-02-08 16:22:00) [7]

MainForm.Align := alTop;
MainForm..BorderIcons := [];
ShowWindow(Application.Handle, SW_HIDE);

--

И ВПЕРЁД УЧИТЬСЯ! УЖЕ СОВСЕМ НАРОД ГОЛОВОЙ ДУМАТЬ РАЗУЧИЛСЯ!


Наверх

Титульная страница Поиск, карта сайта Написать письмо