Подборка с 01.08.2006 по 31.08.2006
Вопрос № 50.616
Здравствуйте, Эксперты!
У меня возник небольшой вопросик, но ответа я на него в интернете не нашёл из-за нехватки времени и решил спросить у вас:
Как форму отобразить поверх всех окон (даже поверх панели с Пуском)?
Один раз получилось, я что-то натыкал в Инспекторе объектов, но потом опять всё вернулось на свои места.
У меня Delphi 7.
Отвечает: Ерёмин Андрей
Здравствуйте, Подболотов Иван Алексеевич!
Поместить форму поверх всех окон можно, если установить для формы свойство Formstyle="fsStayOnTop." Поверх панели задач поместить форму возможно только в том случае, если это разрешено в Windows, т.е. включена соответствующая опция. Обойти это невозможно.
Отвечает: Bochvarov NikB
Здравствуйте, Подболотов Иван Алексеевич!
Посмотри HELP:
BOOL SetWindowPos(
HWND hWnd, // handle of window
HWND hWndInsertAfter, // placement-order handle
int X, // horizontal position
int Y, // vertical position
int cx, // width
int cy, // height
UINT uFlags // window-positioning flags
);
procedure StayOnTop0(aHWnd: HWnd; flShow: boolean);
begin
if aHWnd<>Invalid_Handle_Value then begin
if flShow then begin
SetWindowPos(aHWnd, HWND_TOPMOST, 0, 0, 0, 0,
SWP_NOMOVE Or SWP_NOSIZE{ or SWP_NOACTIVATE Or SWP_SHOWWINDOW});
end else begin
SetWindowPos(aHWnd, HWND_NOTOPMOST, 0, 0, 0, 0,
SWP_NOMOVE Or SWP_NOSIZE{ or SWP_NOACTIVATE Or SWP_SHOWWINDOW})
end;
end;
end;
Вопрос № 50.778
Здравствуйте Уважаемые Эксперты! Наткнулся в интернете на подборку книг, интересующих меня языков. Подскажите пожалуйста где можно скачать книги из списка (см. приложение). Хотя бы часть из них. Заранее Спасибо.
Приложение:
Delphi. Профессиональное программирование (Дмитрий Осипов)
DirectX и Delphi. Искусство программирования (Фленов М. Е.)
Delphi. Книга рецептов. Практические примеры, трюки, секреты (Кадлец В.)
Курс Delphi для начинающих. Полигон нестандартных задач (Федотова С.В., Ремнев А.А.)
Создание новых компонентов в Delphi (Горбунов С. И.)
Основы программирования в интегрированной среде Delphi. Практикум (2-е издание) (Желонкин А.В.)
Разработка клиент-серверных приложений в Delphi (Шкрыль А.А.)
...
Вопрос № 50.874
Здравствуйте Уважаемые эксперты! Как проверить наличие диска в CD приводе и скопировать все папки без каких либо вопросов пользователю. Простьба приложить рабочий исходник программы.
Отправлен: 02.08.2006, 09:35
Вопрос задал: ЖАН (статус: 3-ий класс)
Отвечает: Савенко Вадим Иванович
Здравствуйте, ЖАН!
Функцию проверки наличия диска см. в приложении, а информацию по копированию см. на http://www.delphiworld.narod.ru/base/api_file_operations.html
Приложение:
function DiscInDrive(Drive: Char): Boolean;
var
ErrorMode: Word;
begin
ErrorMode := SetErrorMode(SEM_FailCriticalErrors);
try
if DiskSize(Ord(Drive) - $40) = -1 then
Result := False
else
Result := True;
finally
SetErrorMode(ErrorMode);
end;
end;
Ответ отправил: Савенко Вадим Иванович (статус: 6-ой класс)
Ответ отправлен: 02.08.2006, 11:43
Оценка за ответ: 4
Комментарий оценки:
Спасибо! Но хотелось бы посмотреть на исходник pas файла, а ссылок я и так много видел, но вот код там написанный во многих случаях отказывается работать... (модули надо в Uses добавлять ?)
Вопрос № 51.114
всем привет!
у меня вопрос один
кто поможет мне с ним
хочу поле я создать
чтобы бегать там играть
клетка 32 на 32
их всего десятка два
как создать такое поле
и добавить с ними свойства
чтоб реакция была
и на мышку и на клаву
всем спасибо до свида...?
Отвечает: sir henry
Здравствуйте, Lad_or_Parasite!
Есть метод довольно простой,
И им поделюсь я с тобой.
На форме нужно, чтоб играть,
Из кнопок матрицу создать.
События у кнопок есть,
OnClick, KeyDown, OnKeyPress,
И в них, в событья, прописать,
То, как захочется играть.
Вопрос № 51.321
Добрый день, уважаемые Эксперты!!!
Вопрос такой: Как узнать на каком из компонентов был произведен щелчек правой кнопкой мыши при вызове popupmenu?
Поясню: на форме несколько TImage и popupmenu с обработчиком "убрать изображение" как в обработчике узнать какой image очищать?
Отвечает: din
Здравствуйте, Дмитрий Александрович!
Если у вас к каждому элементу TImage привязана отдельное PopupMenu, то это делается просто, в данном случае получим имя компонента:
1. Объявляем глобальную переменную, например ACtiveImageName типа String
2. Объявляем в классе формы и создаем процедуру:
procedure TForm1.ImageContextPopup(Sender: TObject; MousePos: TPoint;
var Handled: Boolean);
begin
ActiveImageName:=(Sender as TImage).Name;
end;
3. Переопределяем всем TImage обработчик OnContextPopUp:
procedure TForm1.Button1Click(Sender: TObject);
var i: integer;
begin
for i := 0 to Form1.ControlCount -1 do
begin
if (Form1.Controls[i] is TImage) then
(Form1.Controls[i] as TImage).OnContextPopup := ImageContextPopup;
end;
end;
теперь переменная ActiveImageName перед вызовом PopupMenu будет получать имя текущего компонента класса TImage;
Удачи!
P.S. При желании можно все создавать динамически, код будет выглядеть более красиво и компактно.
Вопрос № 51.382
Здравствуйте Уважаемые! Приложите пожалуйста исходник, как скопировать данные (папки и файлы) с CD диска без каких либо вопросов к пользователю. Проверить надичие диска в приводе я уже могу.
Отправлен: 07.08.2006, 11:54
Вопрос задал: ЖАН (статус: 3-ий класс)
Вопрос № 51.532
Здравствуйте!
Вот такой вопрос возник:как из делфи можно вызвать свой-во обозревателя Windows?
Через WINAPI или ShellAPI?
Cпасибо!
Вопрос № 51.554
Можно ли по Handle компонента обращаться к его свойствам?
Отвечает: DeVampir
Здравствуйте, Bcd!
У компонентов нет Handle. Handle есть у окон Windows. Их можно создать, например, компонентами-наследниками TWinControl. При выполнении программы эти объекты будут окнами, но доступа к их свойствам уже не будет. Однако, окну можно посылать сообщения, позволяющие получить и изменить некоторые из его свойств, такие как заголовок окна, свернутость, видимость, доступность и другие.
Комментарий оценки:
Handle есть например у Button, CheckBox. Фактически это окна, но Handle обладают. задача такая: Есть Handle формы. Нужно изменить свойство "Align" этой формы.
Вопрос № 51.617
Уважаемые Эксперты !!!!!
Почему при установке Windows xp sp-1 не поддерживается FAT 32 или я может что не так делаю я включаю в биосе загрузку с CD но при запросе форматирования диска FAT 32 не появляется а только NTFS
Вопрос № 51.810
Здравствуйте.
Такой вопрос как найти все компьютеры в одной сети. Хотелось бы увидеть работающий пример, что бы выводил список всех найденных.
Вопрос № 51.982
Уважаемый товарищи эксперты!Подскажите пожайлуста:как,что и с каким параметром нужно открыть, чтобы появился проводник, открывший попку в директории запускного файла.
Заранее благодарен.
Вопрос № 52.725
Добрый день, уважаемые Эксперты!
Подскажите, пожалуйста, а существует ли в природе компонент, типа TLabel с совершенно прозрачным фоном. Надо сделать надпись поверх TImage.