Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.07.25;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.007 c
7-81496
Fredericco
2002-05-07 13:28
2002.07.25
Интересный вопрос по организации ма-а-аленькой телефонной станции


1-81225
MegaVolt
2002-07-11 16:49
2002.07.25
Как работать с динамическими записями.


14-81480
Agent Smith
2002-06-28 19:51
2002.07.25
Про елочку


1-81221
Yurko
2002-07-10 03:57
2002.07.25
ClipBoard


1-81231
Yurko
2002-07-10 04:03
2002.07.25
TaskBar





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский