| imho.ws |
![]() |
|
|
|
# 1 |
|
Member
Регистрация: 27.02.2003
Адрес: Internet
Пол: Male
Сообщения: 256
![]() ![]() |
Мужики, помогите!
Нужна прога, которая будет делать _только_ 2 функции: прятать и показывать окна... ЗЫ Многофункциональные комбайны не предлагать...
__________________
Я часть той силы, что вечно хочет зла и вечно совершает благо... © И.В. Гете Фауст |
|
|
|
|
# 2 |
|
Administrator
Регистрация: 12.11.2001
Адрес: Израиль
Пол: Male
Сообщения: 2 033
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
куда прятать куда показывать ?
типа hide и тайтл окна или что . ты подробней расскажи. я для тебя напишу скрипт для nncron и ты даже знаеть не будешь чего еще этот nncron делает ![]() токо давай подробней что и куда оно должно прятать. Добавлено через 1 минуту: Neronix кста это не в этот раздел ты запостил тебе надо в раздел программ делать пост. предупреждаю устно потом буду ставить кубики под ником. |
|
|
|
|
# 3 |
|
Member
Регистрация: 27.02.2003
Адрес: Internet
Пол: Male
Сообщения: 256
![]() ![]() |
KpNemo
Прошу прощения за не тот раздел... просто очень нужна прога которая по хот кею спрячет а затем покажет окно... мне надо для человека который ни бум-бум в компах и не сможет настроить сложную прогу + у него на работе ограниченная учетная запись ![]() Добавлено через 1 минуту: KpNemo а про nncron я знаю
__________________
Я часть той силы, что вечно хочет зла и вечно совершает благо... © И.В. Гете Фауст |
|
|
|
|
# 6 |
|
::VIP::
Звезда первого сезона Молчун-2004 Регистрация: 24.08.2002
Сообщения: 1 575
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Напиши сам на Delphi. Сперва получи список handle'ов окон, а потом с помощью функций API посылай им команды HIDE/SHOW. Для получения списка:
Код:
var
Wnd: hWnd;
buff: array [0..127] of char;
wCap: string;
begin
Wnd := GetWindow(Handle, gw_HWndFirst);
while Wnd <> 0 do
begin
if (Wnd <> Application.Handle) and
(GetWindow(Wnd, gw_Owner) = 0) and
(GetWindowText(Wnd, buff, sizeof(buff)) <> 0) then
begin
wCap := StrPas(buff);
{здесь получено handle окна и его имя в переменных Wnd и wCap соответственно}
end;
Wnd := GetWindow(Wnd, gw_hWndNext);
end;
end;
Вот тебе проверенный код (компоненты располагай на форме сам): Код:
unit untHS;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, ValEdit, ExtCtrls, StdCtrls, Buttons;
type
TfrmHS = class(TForm)
vleHS: TValueListEditor;
bitRefresh: TBitBtn;
procedure FormCreate(Sender: TObject);
procedure vleHSSelectCell(Sender: TObject; ACol, ARow: Integer;
var CanSelect: Boolean);
procedure vleHSClick(Sender: TObject);
procedure bitRefreshClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
frmHS: TfrmHS;
implementation
{$R *.dfm}
var
SelectedWnd: integer;
procedure TfrmHS.FormCreate(Sender: TObject);
begin
SelectedWnd := 0;
end;
procedure TfrmHS.vleHSSelectCell(Sender: TObject; ACol, ARow: Integer;
var CanSelect: Boolean);
begin
SelectedWnd := ARow;
end;
procedure TfrmHS.vleHSClick(Sender: TObject);
var
Wnd: hWnd;
begin
Wnd := 0;
if vleHS.Cells[0, SelectedWnd] <> '' then
Wnd := StrToInt(vleHS.Cells[0, SelectedWnd]);
if Wnd = 0 then Exit;
if not IsWindowVisible(Wnd) then ShowWindow(Wnd, SW_SHOWNOACTIVATE)
else ShowWindow(Wnd, SW_HIDE);
vleHS.Repaint;
bitRefreshClick(Sender);
end;
procedure TfrmHS.bitRefreshClick(Sender: TObject);
var
Wnd: hWnd;
buff: array [0..127] of char;
addStr: string;
begin
vleHS.Strings.Clear;
Wnd := GetWindow(Handle, gw_HWndFirst);
while Wnd <> 0 do begin
if (Wnd <> Application.Handle) and
(GetWindow(Wnd, gw_Owner) = 0) and
(GetWindowText(Wnd, buff, sizeof(buff)) <> 0) then begin
if IsWindowVisible(Wnd) then addStr := '+' else addStr := '--';
addStr := IntToStr(Wnd) + '=[' + addStr + '] ' + StrPas(buff);
vleHS.Strings.Add (addStr);
end;
Wnd := GetWindow(Wnd, gw_hWndNext);
end;
end;
end.
__________________
Действовать надо тупо и это лучшее доказательство нашей чистоты и силы! Последний раз редактировалось Ghost; 10.02.2004 в 15:08. |
|
|
|
|
# 9 |
|
Member
Регистрация: 27.02.2003
Адрес: Internet
Пол: Male
Сообщения: 256
![]() ![]() |
Ghost
Огромное тебе человеческое спасибо Даже не знаю как тебя от благодарить... С меня причитается ![]() Добавлено через 7 минут: SonofSun CoolDesk - это разве не Virtual Desktop Manager?
__________________
Я часть той силы, что вечно хочет зла и вечно совершает благо... © И.В. Гете Фауст |
|
|