Delphi
Модератор: Taifun
Изменяем надпись кнопки пуск.
Для начала создайте какой-нибудь Bitmap, который вы будете натягивать на кнопку [т.к. такого понятия как "заголовок кнопки ПУСК" в действительности не существует], а та надпись, что находится на стартовой кнопке, является рисунком. Создавая рисунок, учитывайте размеры и то, что левая сторона должна быть "плоской", как у нас на рисунке слева, это связано с особенностями наложения.
Далее займёмся проектом. Сначала объявляем глобальные переменные
StartButton: hWnd;
OldBitmap: THandle;
NewImage: TPicture;
Затем описываем событие по создания окна [OnCreate]:
procedure TForm1.FormCreate(Sender: TObject);
begin
NewImage := TPicture.create;
NewImage.LoadFromFile('C:\Windows\delphi.BMP'); //здесь укажите путь к нужному файлу
StartButton := FindWindowEx(FindWindow('Shell_TrayWnd', nil), 0, 'Button', nil);
OldBitmap := SendMessage(StartButton, BM_SetImage, 0, NewImage.Bitmap.Handle);
end;
Если вы делаете это на своей машине, то можете всё восстанавливать по событию OnDestroy:
procedure TForm1.FormDestroy(Sender: TObject);
begin
SendMessage(StartButton, BM_SetImage, 0, OldBitmap);
NewImage.Free;
end;
Делаю все как тут. А не меняется в чем проблема ???
Для начала создайте какой-нибудь Bitmap, который вы будете натягивать на кнопку [т.к. такого понятия как "заголовок кнопки ПУСК" в действительности не существует], а та надпись, что находится на стартовой кнопке, является рисунком. Создавая рисунок, учитывайте размеры и то, что левая сторона должна быть "плоской", как у нас на рисунке слева, это связано с особенностями наложения.
Далее займёмся проектом. Сначала объявляем глобальные переменные
StartButton: hWnd;
OldBitmap: THandle;
NewImage: TPicture;
Затем описываем событие по создания окна [OnCreate]:
procedure TForm1.FormCreate(Sender: TObject);
begin
NewImage := TPicture.create;
NewImage.LoadFromFile('C:\Windows\delphi.BMP'); //здесь укажите путь к нужному файлу
StartButton := FindWindowEx(FindWindow('Shell_TrayWnd', nil), 0, 'Button', nil);
OldBitmap := SendMessage(StartButton, BM_SetImage, 0, NewImage.Bitmap.Handle);
end;
Если вы делаете это на своей машине, то можете всё восстанавливать по событию OnDestroy:
procedure TForm1.FormDestroy(Sender: TObject);
begin
SendMessage(StartButton, BM_SetImage, 0, OldBitmap);
NewImage.Free;
end;
Делаю все как тут. А не меняется в чем проблема ???
- NatriXX
- Сообщения: 2658
- Зарегистрирован: Вс, 20 фев 2005 19:48:26
- Откуда: n/a
- Контактная информация:
Дебилизм, или Проблемы с WinAPI в Windows XP SP1.
В общем, проблема следующая:
Нужно сделать программно отключение компьютера. Shutdown, проще говоря. Желателно ломом, то бишь принудительно завершая все работающие приложения. Облом.
При использовании ExitWindows система делает LogOff, вываливается к экрану приветствия, но отключать комп не желает.
Пишу ExitWindowsEx с параметрами:
EWX_FORCE - опять LogOff, EWX_SHUTDOWN и EWX_POWEROFF - никакой реакции в принципе.
Очень надо сделать PowerOff из проги по таймеру, поскольку есть нехорошая привычка спать на клавиатуре Может, кто сталкивался...
В общем, проблема следующая:
Нужно сделать программно отключение компьютера. Shutdown, проще говоря. Желателно ломом, то бишь принудительно завершая все работающие приложения. Облом.
При использовании ExitWindows система делает LogOff, вываливается к экрану приветствия, но отключать комп не желает.
Пишу ExitWindowsEx с параметрами:
EWX_FORCE - опять LogOff, EWX_SHUTDOWN и EWX_POWEROFF - никакой реакции в принципе.
Очень надо сделать PowerOff из проги по таймеру, поскольку есть нехорошая привычка спать на клавиатуре Может, кто сталкивался...
she shines in the world full of ugliness
she matters when everything is meaningless
fragile, she doesn't see her beauty...
she matters when everything is meaningless
fragile, she doesn't see her beauty...
Я тожа не знал как делать, а потом у меня появился файлик, который запускаешь с определённым параметром (надеюсь понятно че ето) и он выполняет указанную команду - выкл, перезагр, однако даже сп. реж. есть.NatriXX писал(а):Дебилизм, или Проблемы с WinAPI в Windows XP SP1.
В общем, проблема следующая:
Нужно сделать программно отключение компьютера. Shutdown, проще говоря. Желателно ломом, то бишь принудительно завершая все работающие приложения. Облом.
При использовании ExitWindows система делает LogOff, вываливается к экрану приветствия, но отключать комп не желает.
Пишу ExitWindowsEx с параметрами:
EWX_FORCE - опять LogOff, EWX_SHUTDOWN и EWX_POWEROFF - никакой реакции в принципе.
Очень надо сделать PowerOff из проги по таймеру, поскольку есть нехорошая привычка спать на клавиатуре Может, кто сталкивался...
- Вложения
-
- QuitShutDown.rar
- вот лови
- (8.79 КБ) 66 скачиваний
- BATMEN
- Сообщения: 7786
- Зарегистрирован: Вс, 05 дек 2004 20:05:20
- Откуда: :ɐдʎʞɯО
- Контактная информация:
Можно так сделать, коряво конечно, но работать будет:
Можно даже удаленный комп вырубать. Ключи можешь поглядеть набрав в командной строке shutdown, там дофига чего есть, даже принудительное закрытие всех программ (хотя они и так закрываются). НУ а с таймером разберешся поди.
Код: Выделить всё
WinExec('shutdown -s -t 60', SW_HIDE);
- NatriXX
- Сообщения: 2658
- Зарегистрирован: Вс, 20 фев 2005 19:48:26
- Откуда: n/a
- Контактная информация:
ЫЫ, сделал , надыбал пару процедур в Delphi World 6... Все работает, просто в ХР\НТ надо кое-какие привилегии дополнительные... Как-нить листинг кидану... Ближе к Новому Году...
she shines in the world full of ugliness
she matters when everything is meaningless
fragile, she doesn't see her beauty...
she matters when everything is meaningless
fragile, she doesn't see her beauty...
Серый, есть возможность выложить DirectX!?Серый писал(а):Я тут программку замутил - календарик на раб. стол. Че самое интересное - это то что он ресурсов системы ваще не жрёт. 0 б.
Времени на ее доработку пока нет. Доделаю выложу как нить.
Ща я игру на DirectX-е пишу (двухмерную). Кстати кто - нибудь знает его ???
у меня тока 9. может завтра или после завтра выложу на медиа архиве. Тока куда ???аааа запихну в разноеPink писал(а):Серый, есть возможность выложить DirectX!?Серый писал(а):Я тут программку замутил - календарик на раб. стол. Че самое интересное - это то что он ресурсов системы ваще не жрёт. 0 б.
Времени на ее доработку пока нет. Доделаю выложу как нить.
Ща я игру на DirectX-е пишу (двухмерную). Кстати кто - нибудь знает его ???
Я не так понял, вообще мне надо DelphiX.Серый писал(а):у меня тока 9. может завтра или после завтра выложу на медиа архиве. Тока куда ???аааа запихну в разноеPink писал(а):Серый, есть возможность выложить DirectX!?Серый писал(а):Я тут программку замутил - календарик на раб. стол. Че самое интересное - это то что он ресурсов системы ваще не жрёт. 0 б.
Времени на ее доработку пока нет. Доделаю выложу как нить.
Ща я игру на DirectX-е пишу (двухмерную). Кстати кто - нибудь знает его ???
То-есть, это компонент для делфи или нет?Серый писал(а):Ясно, а чем тебе DirectX не по душе ???Pink писал(а):Я не так понял, вообще мне надо DelphiX.Серый писал(а): у меня тока 9. может завтра или после завтра выложу на медиа архиве. Тока куда ???аааа запихну в разное
Мне казалось, что DephiX работает с DirectX в паре.
Ну DirectX - это ваще не компонент - это модули (много), а DelphiX - это компонент, при помощи которого и пишешь ты игры. Но он просто не так быстро отображает. В DirectX нада все делать своими ручками, а в DelphiX написал функцию в одну строчку он и сделал все че ему велят !!! В DelphiX нелзя работать без формы. и еще много отличий !!!Pink писал(а):То-есть, это компонент для делфи или нет?Серый писал(а):Ясно, а чем тебе DirectX не по душе ???Pink писал(а): Я не так понял, вообще мне надо DelphiX.
Мне казалось, что DephiX работает с DirectX в паре.
- neXeuse
- Сообщения: 50
- Зарегистрирован: Пт, 21 апр 2006 15:31:34
- Откуда: (указывает вдаль)во-о-он оттуда
Вот тут надо на кнопку тыкнуть,она и с зеленого на красный квадрат перейдет.Серый писал(а):А у меня вопрос !
Например, у меня есть две точки. Как переместить нууу... допустим кнопку, картинку или любой другой объект от одной точки к другой по прямой ???
- Вложения
-
- put.zip
- В путь!Всего 100 шагов!
- (6.54 КБ) 55 скачиваний
A signature is a little text that can be added at the bottom of your posts. It's limited to 255 characters on 5 line(s) and as many images as you want but none can exceed 75x500 pixels, for a maximum of 10Kb. In your text, no more than 100 characters ...
- NatriXX
- Сообщения: 2658
- Зарегистрирован: Вс, 20 фев 2005 19:48:26
- Откуда: n/a
- Контактная информация:
Хых... Пуск - Выполнить - cmd.exe - brcc32.exe /?Pink писал(а):Brcc32.exe открывшись, закрывается.Серый писал(а):Если ты про то что я думаю то вот - "...\Borland\Delphi7\Bin\brcc32.exe"Pink писал(а):Чем можно компелировать resfile.rc в resfile.res
Там все написано
she shines in the world full of ugliness
she matters when everything is meaningless
fragile, she doesn't see her beauty...
she matters when everything is meaningless
fragile, she doesn't see her beauty...
- neXeuse
- Сообщения: 50
- Зарегистрирован: Пт, 21 апр 2006 15:31:34
- Откуда: (указывает вдаль)во-о-он оттуда
Пжалста !!!Серый писал(а):Псиба !!!neXeuse писал(а):Вот тут надо на кнопку тыкнуть,она и с зеленого на красный квадрат перейдет.Серый писал(а):А у меня вопрос !
Например, у меня есть две точки. Как переместить нууу... допустим кнопку, картинку или любой другой объект от одной точки к другой по прямой ???
A signature is a little text that can be added at the bottom of your posts. It's limited to 255 characters on 5 line(s) and as many images as you want but none can exceed 75x500 pixels, for a maximum of 10Kb. In your text, no more than 100 characters ...