Вниз
Скачать: CL | DM;

Управление кнопкой   Найти похожие ветки 

← →
turonix ©   (2003-02-16 22:13) [0]

Здравствуйте уважаемые знатоки. Я хочу написать программу,
заставляющую кнопку "пуск" передвигаться по экрану. Но двигатся она естественно только в пределах диспетчера задач.
У меня такой вопрос: можно ли ее каким нибудь образом сделать активной в пределах рабочего стола? И если можно то как?


← →
Ich Hasse ©   (2003-02-16 22:27) [1]

1. Делаешь ее Образ (находишь дескриптор и читаешь картинку)
2. Прячешь далеко-далеко (ShowWindow(...,swHide))
3. На WinApi создаешь кнопку
4. Ловишь отрисовку кнопки (созданной) и меняешь на то, что ситал
5. Двигаешь!!!


← →
xfrost ©   (2003-02-16 22:48) [2]

Если интересует могу выфложить кусок кода для анимации и прочего извращения над кнопкой "Пуск"


← →
Turonix ©   (2003-02-18 23:23) [3]

xfrost, был бы очень благодарен если бы ты это сделал. А то как на WinApi создать кнопку со свойствами кнопки "пуск" мне неизвестно :(


← →
Ich Hasse ©   (2003-02-19 22:36) [4]

CreateWindow
вот этой функцией можно создать кнопку!!!

А исходники поищи они в инете везде резбросаны


← →
Song ©   (2003-02-19 22:47) [5]

MoveWindow()


← →
GRS   (2003-02-19 22:51) [6]

Насчет создания кнопки со свойствами кнопки ПУСК это наверно к BG. А подвигать ее можно очень просто:

//......
var
Form1: TForm1;
StartButton, TaskBar,: hWnd;
r: TRect;
BLeft, BTop, BWidth, BHeight: Integer;

implementation

{$R *.DFM}

procedure TForm1.FormCreate(Sender: TObject);
begin
TaskBar := FindWindow("Shell_TrayWnd", nil); //панель задач
StartButton := FindWindowEx(TaskBar, 0,"Button", nil); //кнопка Пуск
//......
GetWindowRect(StartButton, r); //координаты и размеры кнопки
BLeft := r.Left;
BTop := r.Top;
BWidth := r.Right - r.Left;
BHeight := r.Bottom - r.Top;
//......
Windows.SetParent(StartButton, 0); //кнопка переместится на Desktop
//......
MoveWindow(StartButton,600,100,BWidth,BHeight, TRUE); //кнопка сдвигается вправо на 600 и вниз на 100 пикселей
end;

//......

procedure TForm1.FormDestroy(Sender: TObject); //вернем все назад
begin
MoveWindow(StartButton,1,1,BWidth,BHeight, TRUE);
Windows.SetParent(StartButton, TaskBar);
end;



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.011 c
1-44230
Che
2003-03-31 02:54
2003.04.14
TMaskEdit


1-44143
h@1f-e1f
2003-04-01 12:53
2003.04.14
Выделение в StringGrid


14-44335
Феликс
2003-03-31 01:59
2003.04.14
Статья с ИЗЕСТИЙ.РУ. Может правда, а можен нет, но почитать можно


14-44447
Supreme 2
2003-03-30 01:16
2003.04.14
Новый и 100%-действующий способ повышения уверенности....


1-44119
snake1977
2003-04-03 09:24
2003.04.14
Компиляция




   Наверх