Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на Delphi


Информационный Канал Subscribe.Ru

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Delphi

Выпуск № 163
от 25.06.2005, 23:20

Администратор:Калашников О.А.
В номере:Вопросов: 4, Ответов: 7


Вопрос № 22408: Уважаемые эксперты, у меня такой вот вопрос. Как реализовать Drag&Drop текста из Edit'a моей формы в другое приложение, например, поле ввода на открытой в браузере странице?...
Вопрос № 22410: почему у меня при компиляции не показывает меню при использованиии Dynamic Skin Form может я что-то не правильно поставил (только не говорить используй другой компонент!!!!!!!)...
Вопрос № 22416: Уважаемый sir henry, спасибо за ответ по вопросу № 22344 Но все же непонятно как работать с xlValues и др. переменными, (см. фрагмент кода) компилятор их не признает. "Разжуйте", пожалуйста до конца как правильно построить Find....
Вопрос № 22433: Добрый день. Подскажите каким образом при наведении в TreeView на ветках можно сделатить Hint(подсказки) ..

Вопрос № 22.408
Уважаемые эксперты, у меня такой вот вопрос. Как реализовать Drag&Drop текста из Edit'a моей формы в другое приложение, например, поле ввода на открытой в браузере странице?
Отправлен: 20.06.2005, 03:50
Вопрос задал: Xsid (статус: Посетитель)
Всего ответов отправлено: 3

Отвечает: Jadd
Здравствуйте, Xsid!
Интересный вопрос. Нужно попробовать, хотя я не делал такого. Для начала нужно в первом приложении определить событие OnMouseMove, а во втором OnMouseUp. Дальше, мы в событии OnMouseMove определяем нажата ли клавиша (там одним из параметров процедуры). Если да, то копируем выделенный (!!!) текст в клипборд и тащим на ворму другого приложения (т.е. клавишу опускать не нужно). Во втором приложении определяем отпустили ли клавишу и проверяем клипборд. Наверное так.
---------
Hakuna matata
Ответ отправил: Jadd (статус: Студент)
Отправлен: 20.06.2005, 05:42

Отвечает: Gin
Здравствуйте, Xsid!
Давайте адрес пришлю с потрохами. Иначе ничего не получится - с "родными" возможностями будет туго.
С Уважением, Gin.
Ответ отправил: Gin (статус: 7-ой класс)
Отправлен: 20.06.2005, 09:23

Отвечает: Tsechoev Bagaudin
Здравствуйте, Xsid!
Может это и возможно через API Windows, хотя и сомневаюсь.
Может проще Copy&Paste :)
---------
Есть только одно зло - невежество, и только одно благо - знания
Ответ отправил: Tsechoev Bagaudin (статус: 3-ий класс)
Отправлен: 20.06.2005, 10:04
Оценка за ответ: 5
Комментарий оценки:
To GIN: Мой E-mail --> dmitren@mail.ru


Вопрос № 22.410
почему у меня при компиляции не показывает меню при использованиии Dynamic Skin Form может я что-то не правильно поставил (только не говорить используй другой компонент!!!!!!!)
Отправлен: 20.06.2005, 07:58
Вопрос задал: killer-klod (статус: Посетитель)
Всего ответов отправлено: 1

Отвечает: Delphin
Здравствуйте, killer-klod!
При компиляции??? Может после компиляции и запуска?
Если да то:
1. Посмотри внимательно на установленные опции VCL компонента.
2. Visible проверь
3. Проверь прозрачность.
4. Проверь код.
5. Проверь может у тебя старая версия?
6. Паганый кряк?
Если не получилось то стучи в ICQ - 77778851 и давай код разберемся вместе.
если нет то проигнорируй этот ответ.
---------
Ищу сервис пак для школы ^)))
Ответ отправил: Delphin (статус: 6-ой класс)
Отправлен: 22.06.2005, 19:48


Вопрос № 22.416
Уважаемый sir henry, спасибо за ответ по вопросу № 22344
Но все же непонятно как работать с xlValues и др. переменными,
(см. фрагмент кода) компилятор их не признает. "Разжуйте", пожалуйста до конца как правильно построить Find.

Приложение:

Отправлен: 20.06.2005, 10:38
Вопрос задал: Кравцов Юрий Владимирович (статус: Посетитель)
Всего ответов отправлено: 1

Отвечает: sir henry
Здравствуйте, Кравцов Юрий Владимирович!
Извиняюсь, небольшая ошибочка - это не переменная, а константа. :)
Если честно - мне лень было копаться в справке по VBA и если Вы знаете английский язык, то сами можете почитать - к MS Offic'у прилагается хорошая справка.
Вот Вам ссылка на статью, которая дает примеры работы с программами Office из Дельфи:
http://delphiworld.narod.ru/base/access_to_microsoft_com_servers.html
http://delphiworld.narod.ru/base/on_waves_of_integrations.html
http://delphiworld.narod.ru/base/on_waves_of_integrations2.html
http://delphiworld.narod.ru/base/on_waves_of_integrations3.html
Лично я никогда не производил никакие действия в документах офиса, использовал толко как готовый отчет (потому как медленно и надо использовать тучи преобразований) пока не нашел более быструю и, что хорошо, универсальную форму создания отчетов - документы HTML. Поверьте, скорость создания отчетов выросла в десятки раз (особенно это заметно при большом объеме данных для отчета) по сравнению с Excel или Word.
Однако, если Вы работаете с документами офиса не как отчеты, а с другими целями (например переводить данные из таблиц Excel в таблицы Access), то будет лучше использовать компоненты офиса, которые входят в состав Дельфи (смотрите закладки компонентов). При их использовании, Дельфи Вам будет выдавать подсказку как на свои родные компоненты.
Пройдитесь также по этой ссылке:
http://www.torry.net/quicksearchd.php?SID=33da85ba45d8d1b961193099e4cd1471&String=excel&Title=Yes
и наверняка в одном их компонентов обнаружите описание констант и вообще много полезного по работе с Excel.
Ответ отправил: sir henry (статус: Профессор)
Отправлен: 20.06.2005, 12:04
Оценка за ответ: 4
Комментарий оценки:
Спасибо за ответ. Будем копать.


Вопрос № 22.433
Добрый день.
Подскажите каким образом при наведении в TreeView на ветках можно сделатить Hint(подсказки)
Отправлен: 20.06.2005, 15:45
Вопрос задал: Алексей (статус: Посетитель)
Всего ответов отправлено: 2

Отвечает: Tsechoev Bagaudin
Здравствуйте, Алексей!
Установи свойство для TreeView.ShowHint:= True;
а в обработчике события OnMousMove напиши следуещее
TreeView1.Hint:= 'Hint for Node ' + TreeView1.GetNodeAt(X,Y).Text;
На самом деле там нужно сделать примерно, следующее:
Судя по индексу или тексту каждого узла (лучше по тексту) создаешь массив, а потом
TreeView1.Hint:= HintsArray[TreeView1.GetNodeAt(X,Y).Index];
В С++ эта проблема решилась бы через класс Map, но увы с Паскалем проблемы. Но! Не надо обижаться на Delphi :) Динамически объяви экземляр класса TValueListEditor в классе формы или как глобальную переменную
TT: TValueListEditor;
, при создании формы создай ее с предком nil заполни ее
TT:= TValueListEditor.Create(nil);
TT.InsertRow('Node1','HintForNode1',True);
что где писать думаю ясно.
а потом на тоже самое событие OnMouseMove. пропиши:
TreeView1.Hint:= TT.Values[TreeView1.GetNodeAt(X,Y).Text];

Удачи!
---------
Есть только одно зло - невежество, и только одно благо - знания
Ответ отправил: Tsechoev Bagaudin (статус: 3-ий класс)
Отправлен: 20.06.2005, 16:36

Отвечает: Delphin
Здравствуйте, Алексей!
По шывилению курсора над твоей TreeView смотри что за ветка GetNodeAt();
Дальше или рисуй вручную маленькое окошко с подсказской либо смотри MSDN и справку.
---------
Ищу сервис пак для школы ^)))
Ответ отправил: Delphin (статус: 6-ой класс)
Отправлен: 22.06.2005, 19:50


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2005, RusFAQ.ru, Россия, Москва. Все права защищены.
Идея, дизайн, программирование, авторское право: Калашников О.А.

Яндекс


Subscribe.Ru
Поддержка подписчиков
Другие рассылки этой тематики
Другие рассылки этого автора
Подписан адрес:
Код этой рассылки: comp.soft.prog.delphiplus
Отписаться
Вспомнить пароль

В избранное