Вопрос № 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