Вопрос № 72317: Привет!!! А можно ли написать програмулину, котороя бы могла рисовать свой курсор поверх курсора в выбраном окне. Просто есть програмулина в которой приходится рисовать и какието мегапрограммеры сделали ей курсор, что он постоянно с фоном сливается и...Вопрос № 72320: Здравствуйте уважаемые эксперты!Помогите пожалуйста мне "модернизировать "приведённый ниже код под следующие условия.
При открытии формы кнопки должна быть синими!!! при клике по ним они должны становиться красными!!! обратно к синиму ц...Вопрос № 72324: Здраствуйте Уважаемые эксперты, у меня появилася маленькая проблема, я хочу чтобы одно значение "a" сравнивалось с значениями из листбокса, но если в листбоксе тоько одна запись, то мне выдаёт ошибку: List index out of bounds (-1) в приложе...Вопрос № 72436: Доброго времени суток
всем. Кто может, расскажите поподробнее о посылке сообщений Windows и Word'у в частности. Имеются в виду сообщения типа: инициация нажатия клавиш и т.д. Заранее благодарен....
Вопрос № 72.317
Привет!!! А можно ли написать програмулину, котороя бы могла рисовать свой курсор поверх курсора в выбраном окне. Просто есть програмулина в которой приходится рисовать и какието мегапрограммеры сделали ей курсор, что он постоянно с фоном сливается и никак это не изменить. И не будет ли написаная прога постоянно чинить разборки с первой, за то, какой курсор будет показан, а то еще заставят процик только перерисовкой и заниматься.
Отправлен: 23.01.2007, 21:02
Вопрос задал: Zorro (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Лукьяненко Алексей Валериевич
Здравствуйте, Zorro!
А может будет проще взять и поменять курсор в ресурсах программы на более приемлемый? Воспользоваться, например, Borland Resource Workshop (в оригинале идет вместе с Delphi и C++Builder на диске) или Resource Resorator (он умеет и заменять ресурсы)
Здравствуйте уважаемые эксперты!Помогите пожалуйста мне "модернизировать "приведённый ниже код под следующие условия.
При открытии формы кнопки должна быть синими!!! при клике по ним они должны становиться красными!!! обратно к синиму цвету их должен возвращать второй клик по ним,а так же предусмотреть третью кнопку по которой первые две возвращались в начальное состояние(т.е синему цвету).
Приложение:
Отправлен: 23.01.2007, 21:19
Вопрос задал: Delphi-n (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 2)
Отвечает: Gh0stik
Здравствуйте, Delphi-n!
В приложении смотрите модифицированный код...
В нем реализованы все пункты, которые Вы просили выполнить. За исключением одного (При открытии формы кнопки должна быть синими!!!).
С этим пунктом мне так и не удалось справиться :( (если это у Вас получиться обязательно сообщите...)
Good Luck!!!
Приложение:
--------- Господь Бог - это всего лишь сверхмощный генератор случайных чисел, в соответствии с которыми сочетаются события на Земле. Генератор случайных чисел - и только.
Ответ отправил: Gh0stik (статус: Профессионал) Украина, Славянск Организация: Славянский государственный педагогический университет (Кафедра алгебры) ICQ: 289363162 ---- Ответ отправлен: 23.01.2007, 22:29
Отвечает: Bouffon
Здравствуйте, Delphi-n!
используй speedbutton размести на нем картинки синий тм красный
Ответ отправил: Bouffon (статус: 2-ой класс)
Ответ отправлен: 24.01.2007, 04:16
Вопрос № 72.324
Здраствуйте Уважаемые эксперты, у меня появилася маленькая проблема, я хочу чтобы одно значение "a" сравнивалось с значениями из листбокса, но если в листбоксе тоько одна запись, то мне выдаёт ошибку: List index out of bounds (-1) в приложении кусок кода который выдаёт ошибку, но если значение совпадает, то сообщение совпало' всёравно покажет.
Помогите пожалуйста разобратся, заранее Спасибо.
С Уважением, Станислав.
Приложение:
Отправлен: 23.01.2007, 21:47
Вопрос задал: Станислав (статус: 1-ый класс)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 6)
Отвечает: Leshka
Здравствуйте, Станислав!
В приведенном Вами коде нету закрывающего цикл end'а. Если его поставить сразу, то код работает корректно даже при отсутсвии записей.
Ответ отправил: Leshka (статус: 1-ый класс)
Ответ отправлен: 24.01.2007, 10:16
Отвечает: monah
Здравствуйте, Станислав!
Завершающий end тут не при чем, без него программа просто не запустилась бы.
Ошибка тут:
if a = ListBox3.Items[i];
а надо if a = ListBox3.Items.strings[i];
Еще лучше (быстрее) i:= ListBox3.Items.IndexOf(a); i вернет значение (-1) если элемент не найден.
--------- festina lente
Ответ отправил: monah (статус: Студент)
Ответ отправлен: 24.01.2007, 11:08
Вопрос № 72.436
Доброго времени суток всем. Кто может, расскажите поподробнее о посылке сообщений Windows и Word'у в частности. Имеются в виду сообщения типа: инициация нажатия клавиш и т.д. Заранее благодарен.
Отвечает: Сухомлин Кирилл Владимирович
Здравствуйте, Пастарнаков Роман!
Вот эта WinAPI фнукция, если я ничего не путаю.
LRESULT CALLBACK WindowProc(
HWND hwnd, // handle to window
UINT uMsg, // WM_KEYDOWN
WPARAM wParam, // virtual-key code
LPARAM lParam // key data
);
hwnd: хэндл окна MS Word. Не путать с хэндлом процесса!
uMsg: просто подставьте WM_KEYDOWN
wParam: Например, VK_ESC - клавиша Esc. Виртуальные скан-коды клавиш можете посмотреть в файле Windows.pas
lParam: кол-во повторений клавиш + некоторые флаги.
Итого:
procedure EmulateKeyPress(Key, repeats: Word);
WindowProc(Handle, WM_KEYDOWN, Key, repeats);
Sleep(50);
WindowProc(Handle, WM_KEYUP, Key, 1 or $C0000000); // Если захотите узнать откуда это магическое число $C0000000, прочитайте в MSDN справку про WM_KEYUP
end;
А вообще, с приложениями из серии MS Office хорошо
работать через соотв. компоненты, используя готовое OLE Automation, а не извращаясь через эмуляцию.
Приложение:
--------- Не узнаешь - не попробуешь.
Ответ отправил: Сухомлин Кирилл Владимирович (статус: Специалист)
Ответ отправлен: 25.01.2007, 11:59 Оценка за ответ: 5 Комментарий оценки: Огромное спасибо! Именно это и искал!!!