Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.03.2010, 22:02   #1
---FISHER---
Пользователь
 
Аватар для ---FISHER---
 
Регистрация: 08.08.2009
Сообщений: 68
По умолчанию Работа с ярлыками

Здравствуйте Всем! Выскажите пожалуйста свои мысли по поводу возможного решения следующей задачи: мы нажимаем на кнопку, открывается стандартный диалог "Открыть", в нем выбираем файл *.exe, далее жмем Открыть, после этого создается новая кнопка, в значении свойста Glyph должен появиться значек этого экзэшника, и при нажатии этой кнопки запускаться сама эта экзэшка. Спасибо за внимание
Самое дорогое, что у нас есть - это время...
---FISHER--- вне форума Ответить с цитированием
Старый 07.03.2010, 22:29   #2
Volt
Форумчанин
 
Аватар для Volt
 
Регистрация: 07.12.2008
Сообщений: 244
По умолчанию

ну вот пример в uses ShellAPI
Код:
procedure TForm1.SpeedButton1Click(Sender: TObject);
var
  Icon: TIcon;
  Bitmap: TBitmap;
  FileInfo: SHFILEINFO;
begin
if OpenDialog1.Execute then
begin
 Icon := TIcon.Create;
 Bitmap := TBitmap.Create;
 icon.Handle := ExtractIcon(HInstance,PChar(OpenDialog1.FileName), 0);
 DestroyIcon(FileInfo.hIcon);
 Bitmap.Canvas.Draw(0, 0, Icon);

 Bitmap.Height := Icon.Height;
 Bitmap.Width := Icon.Width;
 Bitmap.Canvas.Draw(0, 0, Icon);


 Form1.SpeedButton1.Glyph.Assign(Bitmap);
 Bitmap.Free;
 Icon.Free;
end;
end;
|̲̅̅●̲̅̅|̲̅̅=̲̅̅|̲̅̅●̲̅̅]

Последний раз редактировалось Volt; 07.03.2010 в 22:46.
Volt вне форума Ответить с цитированием
Старый 07.03.2010, 23:11   #3
---FISHER---
Пользователь
 
Аватар для ---FISHER---
 
Регистрация: 08.08.2009
Сообщений: 68
По умолчанию

Мистер Volt, вы просто творите чудеса благодарю Вас. А как в ходе этой процедуры получить адрес этого экзешника? (извиняюсь за свою безграмотность в винАПИ, в скором времени обязательно изучу), и ещё как бы Вы сохраняли соответствие кнопок с путями экзэшников? Можно ли обойтись просто записью в .txt (например в процессе использования программы было создано 10 кнопок запускающих 10 соответствующих программ, как лучше сохранить эти соответствия)? И ещё кстати желательно чтобы после выхода из программы сохранялось не только соответствие линков, но и чтобы оставались иконки у кнопок
Самое дорогое, что у нас есть - это время...

Последний раз редактировалось ---FISHER---; 07.03.2010 в 23:15.
---FISHER--- вне форума Ответить с цитированием
Старый 07.03.2010, 23:36   #4
Volt
Форумчанин
 
Аватар для Volt
 
Регистрация: 07.12.2008
Сообщений: 244
По умолчанию

получить адрес этого экзешника OpenDialog1.FileName. На счет остального решать вам ___
|̲̅̅●̲̅̅|̲̅̅=̲̅̅|̲̅̅●̲̅̅]

Последний раз редактировалось Volt; 07.03.2010 в 23:45.
Volt вне форума Ответить с цитированием
Старый 08.03.2010, 09:39   #5
---FISHER---
Пользователь
 
Аватар для ---FISHER---
 
Регистрация: 08.08.2009
Сообщений: 68
По умолчанию

Спасибо. Хорошо
Самое дорогое, что у нас есть - это время...
---FISHER--- вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задача. Работа с псевдослучайными последовательностями (ПСП). Работа с цветом. 0101 Помощь студентам 3 17.12.2009 23:57
Работа с webbrowser - Фреймы, работа с конкретным феймом в фрейме NewDelphi Фриланс 2 08.10.2009 11:00
Управление ярлыками FatumS Общие вопросы Delphi 31 10.07.2009 20:31
Dockbar или плавающая панель с ярлыками Hronos13 Qt и кроссплатформенное программирование С/С++ 0 04.05.2009 12:19