Вопрос № 33591: У меня вопрос такого характера.
Мне надо в проге реализовать архивирование файлов, т.е. у меня есть определенные файлы, имя и путь их постоянно меняется, поэтому я не могу использовать обыкновенные Buckup. Как это можно реализовать по лучше? Ко...Вопрос № 33613: Здравствуйте.
Как получить список всех окон и их параметры...Вопрос № 33625: Здравствуйте, уважаемые эксперты!
Как можно изменить раскладку клавиатуры для RichEdit нажатием кнопки на форме?
Спасибо....Вопрос № 33638: Здравствуйте, уважаемые эксперты!
Как показать подсказку при наведении на пункт меню (MainMenu) в StatusBar'e и в label'e?...
Вопрос № 33.591
У меня вопрос такого характера.
Мне надо в проге реализовать архивирование файлов, т.е. у меня есть определенные файлы, имя и путь их постоянно меняется, поэтому я не могу использовать обыкновенные Buckup. Как это можно реализовать по лучше? Конечно я написал мини-приложение и осуществил этот способ таким образом:
WinExec('c:\program filse\winrar\rar.exe a filename1, filename2, filename3', SW_HIDE); Конечно в таком варианте работает классно, тем более что мультимедийно, но у меня получается нет контроля за этим процессом. Я не знаю: когда он закончился, с каким ошибками и закончился ли он вообще. Тем более надо реализовать компоненту ProgressBar. Вот так вот, помогите тем, чем можете.
Отвечает: Лучников Юрий Владимирович
Здравствуйте, Karanskiy Arkadiy!
Советую воспользоваться компонентом на подобие ZipForge.
Кучу подобных можно найти на torry.net.
Тут вам и контроль за процессом архивирования, и ПрогрессБар и отпадает обязательное наличие стороннего архиватора...
Приблизительный вариант решения Вашей задачи см. в приложении.
Но рекомендую учесть тот факт, что формат RAR является платным. Уточню: распаковка бесплатная, упаковка - денег стоит.
Приложение:
Ответ отправил: Denisss (статус: Специалист)
Отправлен: 20.01.2006, 11:16 Оценка за ответ: 5 Комментарий оценки: Thanks
Вопрос № 33.613
Здравствуйте.
Как получить список всех окон и их параметры
Получение информации об окне
BOOL GetWindowInfo(HWND hwnd, PWINDOWINFO pwi);
Ответ отправил: n/a (статус: 2-ой класс)
Отправлен: 19.01.2006, 17:11
Отвечает: Dushin Igor
Здравствуйте, Сибирцев Олег!
Вот тут подробная информация:
http://www.delphiworld.narod.ru/base/other_windows.html
Или смотри приложение.
Приложение:
--------- Храни меня Господь, в сухом прохладном месте! =)
Ответ отправил: Dushin Igor (статус: 3-ий класс)
Отправлен: 19.01.2006, 17:33
Отвечает: Меркулов Алексей
Здравствуйте, Сибирцев Олег! вот небольшой пример
Приложение:
Ответ отправил: Меркулов Алексей (статус: 3-ий класс)
Отправлен: 19.01.2006, 22:26
Отвечает: One
Здравствуйте, Сибирцев Олег!
По твоему вопросу есть неплохой пример в книге М. Фленова "Программирование в Delphi глазами хакера", статья 3.4. Работа с чужими окнами, стр. 84-89. Её мона в Инете найти (и качнуть).
--------- Компьютер должен работать, а человек - DOOMать.
Ответ отправил: One (статус: 2-ой класс)
Отправлен: 19.01.2006, 22:38
Вопрос № 33.625
Здравствуйте, уважаемые эксперты!
Как можно изменить раскладку клавиатуры для RichEdit нажатием кнопки на форме?
Спасибо.
Отвечает: romodos
Здравствуйте, Граур Василий Олегович!
Сделать раскладку русской
ActivateKeyboardLayout(LoadKeyboardLayout('00000419', 0), 0)
Сделать раскладку английской
ActivateKeyboardLayout(LoadKeyboardLayout('00000409', 0), 0);
В приложении пример использования
Приложение:
--------- FAQ me off!
Ответ отправил: romodos (статус: Практикант)
Отправлен: 19.01.2006, 20:03
Отвечает: One
Здравствуйте, Граур Василий Олегович!
procedure SetRU;
var
Layout: array[0.. KL_NAMELENGTH] of char;
begin
LoadKeyboardLayout( StrCopy(Layout,'00000419'),KLF_ACTIVATE);
end;
procedure SetEN;
var
Layout: array[0.. KL_NAMELENGTH] of char;
begin
LoadKeyboardLayout(StrCopy(Layout,'00000409'),KLF_ACTIVATE);
end;
{--------------------------------------------------------------------
Пример использования:}
procedure TForm1.Button1Click(Sender: TObject);
begin
SetRU;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
SetEN
end;
--------- Компьютер должен работать, а человек - DOOMать.
Ответ отправил: One (статус: 2-ой класс)
Отправлен: 19.01.2006, 21:38
Отвечает: Меркулов Алексей
Здравствуйте, Граур Василий Олегович! Подробная информация на эту тему есть на сайте DelphiWorld.narod.ru
Ответ отправил: Меркулов Алексей (статус: 3-ий класс)
Отправлен: 19.01.2006, 22:33
Вопрос № 33.638
Здравствуйте, уважаемые эксперты!
Как показать подсказку при наведении на пункт меню (MainMenu) в StatusBar'e и в label'e?
Отправлен: 19.01.2006, 21:37
Вопрос задал: 007Makc (статус: Посетитель)
Всего ответов: 5 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Архангельский Андрей Германович
Здравствуйте, 007Makc!
Открой дезайнер меню, выбери соответствующий пункт и установи для него Hint.
Не забудь установить свойство ShowHint = true
Отвечает: Slava
Здравствуйте, 007Makc!
Для того, что бы statusbar показывал подсказку автоматически, свойство AutoHint для statusbar должно быть true.
Ответ отправил: Slava (статус: 8-ой класс)
Отправлен: 19.01.2006, 22:35
Отвечает: Меркулов Алексей
Здравствуйте, 007Makc! StatusBar1.AutoHint:=True;
В событие OnMouseMove
Label1.Caption:=<Имя меню>Hint
Ответ отправил: Меркулов Алексей (статус: 3-ий класс)
Отправлен: 19.01.2006, 22:38
Отвечает: sir henry
Здравствуйте, 007Makc!
Поставьте ShowHint в True, чтобы подсказки выводились в принципе, а в свойстве Hint напишите саму подсказку.
Ответ отправил: sir henry (статус: Академик)
Отправлен: 20.01.2006, 05:55
Отвечает: Zubex
Здравствуйте, 007Makc!
Для меню надо выставить ShowHint:=True;
procedure Form1.FormCreate(Sender:TObject);
begin
Application.OnHint:=DisplayHint;
end;
procedure TCustOrdersForm.DisplayHint(Sender:TObject);
begin
StatusBar1.Panels[0].Text:=Application.Hint;
Label1.Caption:=Application.Hint;
end;
--------- Если не знаешь что сказать - лучше промолчи...
Ответ отправил: Zubex (статус: 5-ый класс)
Отправлен: 20.01.2006, 10:51 Оценка за ответ: 5