Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.07.25;
Скачать: CL | DM;

Вниз

Помогите!!! Два часа сижу вату катаю. Запарился уже.   Найти похожие ветки 

 
TTCustomDelphiMaster ©   (2002-07-13 21:35) [0]

Делаю форму, которая должна работать по принципу формы инсталяшки, т.е. в режиме работы форма занимает весь экран (скрывает панель задач). При нажатии ctrl+esc появляется панель задач, соответственно с нее можно открыть любое окно и оно появится поверх моей формы. Про alt+tab итак понятно, как должно работать.
Так вот, окно расползается по эрану как тараканы, но и замочить его тоже непросто. При нажатии ctrl+esc панель задач не появляется а выскакивает только меню кнопки пуск. По alt+tab другие приложения активируются только под моим окном. Повесил строку снятия с top"а на кнопку - работает как часики.
И второе при нажатии на booton2 появляется message он должен находится поверх моего окна постоянно. С ним вообще запарка. Кода приложение активируется он улетает за главную форму и программы вырубается только ctrl+f2.
Вообщем вопрос такой, как все это делают лучшие программоведы?
Во избежание лишних вопросов и предположений привожу исходник этого безобразия.

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
AppEvnts, StdCtrls;

type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
ApplicationEvents1: TApplicationEvents;
procedure Button1Click(Sender: TObject);
procedure ApplicationEvents1Activate(Sender: TObject);
procedure ApplicationEvents1Deactivate(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
begin
SetWindowPos(Handle, HWND_NOTOPMOST, 0, 0, Screen.Width, Screen.Height, SWP_SHOWWINDOW);
end;

procedure TForm1.ApplicationEvents1Activate(Sender: TObject);
begin
SetWindowPos(Handle, HWND_TOPMOST, 0, 0, Screen.Width, Screen.Height, SWP_SHOWWINDOW);
end;

procedure TForm1.ApplicationEvents1Deactivate(Sender: TObject);
begin
SetWindowPos(Handle, HWND_TOPMOST, 0, 0, Screen.Width, Screen.Height, SWP_SHOWWINDOW);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
ShowMessage("kfhfd");
end;

end.


 
TTCustomDelphiMaster ©   (2002-07-13 23:32) [1]

Тут два байта по дороге пореялось

procedure TForm1.ApplicationEvents1Deactivate(Sender: TObject);
begin
SetWindowPos(Handle, HWND_ NOTOPMOST, 0, 0, Screen.Width, Screen.Height, SWP_SHOWWINDOW);
end;


 
TTCustomDelphiMaster ©   (2002-07-14 11:59) [2]

Вытаскиваю свой вопрос на верх. Мож кто ответит?


 
TTCustomDelphiMaster ©   (2002-07-14 16:03) [3]

Что-то модератор разбушевался, начал удалять мои вопросы.
Ладно попробуем еще раз его вытащить навех.



Страницы: 1 вся ветка

Текущий архив: 2002.07.25;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.014 c
7-81504
ses1
2002-05-03 21:36
2002.07.25
Объем памяти видеоадаптера???


1-81210
shelest
2002-07-11 17:00
2002.07.25
Форма в виде подсказки в Win XP.


1-81269
Олег Лаукарт
2002-07-08 12:44
2002.07.25
Проблемы с RichEdit


1-81273
delta
2002-07-15 12:47
2002.07.25
Буфер обмена


7-81507
vlad0007
2002-04-11 20:02
2002.07.25
Okey кто нить знает???