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

Вниз

Приложение - эгоист   Найти похожие ветки 

 
CASU   (2002-10-30 17:12) [0]

Ребята! Как сделать так, чтобы при запущенном моем приложении пользователь не мог перейти к любому другому приложению не закрыв мое?


 
Marcus   (2002-10-31 14:56) [1]

Заставить пользователя работать в DOS! :)))
Ну а если кроме шуток, то можно попробовать такой зверский способ: при запуске своей проги найти все окна запущенных приложений через EnumWindows и заблокировать их EnableWindow(hwnd, false), не забыв естественно потом разблокировать, при закрытии твоего приложения.


 
Толик   (2002-10-31 15:22) [2]

А какой смысл делать такое приложение?
Умными людьми была потрачена масса времени на то, чтобы сделать многозадачные операционные системы. Преимущества такого подхода очевидны. Так какой смысл делать приложения противоречащие концепции операционной системы?
Что, назад в будущее??? :)


 
msts   (2002-10-31 15:31) [3]

какая винда?
если под нт4/2000/xp
то созданием рабочего стола


 
Обсолютный Ноль   (2002-11-03 21:44) [4]

with form1 do
begin
formstyle:=fsstayontop;
borderstyle:=bsnone;
top:=0;
left:=0;
width:=1100;
height:=1100;
systemparametrsinfo(.....,nil);
//P.S. Что вместо ..... посмотри в хелпе.
end;







 
Pat   (2002-11-03 23:33) [5]

Обсолютный Ноль (03.11.02 21:44)
Win+D и можно переходить на любое приложение
Надо немного подправить код - поместить окно поверх всех в системе SetWindowPos, "блокировать" Win+D - отлавливать WM_POSCHANGING..кажись оно так звучит. Если надо будет - напишу подробнее


 
Pat   (2002-11-03 23:46) [6]

Короче, примерно так:

procedure WMWinPosChanging(var mes: TWMWINDOWPOSCHANGING); message WM_WINDOWPOSCHANGING;
. . . . . . . .
procedure TForm1.WMWinPosChanging(var mes: TWMWINDOWPOSCHANGING);
begin
mes.WindowPos^.flags := mes.WindowPos^.flags and not SWP_HIDEWINDOW;
inherited;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
with form1 do
begin
SetBounds(0,0,screen.width,screen.height);
FormStyle:=fsStayOnTop;
BorderStyle:=bsNone;
end;
SetWindowPos(handle,HWND_TOPMOST,left,top,width,height,SWP_SHOWWINDOW)
end;


 
MFV   (2002-11-03 23:47) [7]

// Это я юзал в только сегодня редактированной проге.
// На Win+D не пробовал пока

procedure TForm1.KillCAD;
var
Dummy : integer;
begin
Dummy := 0;
{Отключаем ALT-TAB}
SystemParametersInfo( SPI_SETFASTTASKSWITCH, 1, @Dummy, 0);
{Отключаем CTRL-ALT-DEL}
SystemParametersInfo( SPI_SCREENSAVERRUNNING, 1, @Dummy, 0);
end;

procedure TForm1.CoverScreen;
begin
BorderStyle:=bsNone;
Left:=0;
Top:=0;
Width:=GetSystemMetrics(SM_CXSCREEN);
Height:=GetSystemMetrics(SM_CYSCREEN);
FormStyle:=fsStayOnTop;
end;



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

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

Наверх




Память: 0.45 MB
Время: 0.007 c
1-51821
Sergy
2002-12-05 11:27
2002.12.16
Flash файл в заставку


3-51631
Карелин Артем
2002-11-28 11:53
2002.12.16
Как определить число записей в DataSet без FetchAll?


7-51986
SergePik
2002-10-14 15:12
2002.12.16
адрес LPT порта в Win2k


1-51677
AlexT1000
2002-12-05 16:55
2002.12.16
Неработают гарячие клавиши TActions в DLL. Как побороть?


3-51569
Воропай Андрей
2002-11-25 11:57
2002.12.16
Повторный запуск клиентского приложения не происходит





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский