Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> ms paint как встроенный редактор 
:(
    Опции темы
Romikgy
Дата 24.8.2009, 21:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: 26
Всего: 146



как его заюзать сабж в своем софте для редактирования простых картинок ? 


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
Keeper89
Дата 24.8.2009, 21:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: 20
Всего: 58



Наверное как-то так:
Сохранить рисунок в файл->Передать в пеинт->Отредактировать и сохранить->Подождать пока пеинт закроется->Перезагрузить у себя картинку.
ActiveX для пеинта я не встречал.


--------------------
PM MAIL WWW   Вверх
Akella
Дата 24.8.2009, 22:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 36
Всего: 329



А может через TOleContainer?
PM MAIL   Вверх
Romikgy
Дата 24.8.2009, 23:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: 26
Всего: 146



Цитата(Keeper89 @  24.8.2009,  20:31 Найти цитируемый пост)
Сохранить рисунок в файл->Передать в пеинт->Отредактировать и сохранить->Подождать пока пеинт закроется->Перезагрузить у себя картинку.

это понятно , но не интересно , хочется на прямую

Цитата(Akella @  24.8.2009,  21:20 Найти цитируемый пост)
А может через TOleContainer? 

я спрошаю.... и пытаюсь получить ответ smile
пример можно ?


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
CodeMonkey
Дата 25.8.2009, 11:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1839
Регистрация: 24.6.2008
Где: Россия, Тверь

Репутация: 38
Всего: 89



Через OLE-контейнер точно можно. Я даже в книжке Фаронова пример видел. Только было это сто лет назад.


--------------------
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
Akella
Дата 26.8.2009, 17:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 36
Всего: 329



Я точно не помню, поищи в метод OpenFile в олеконтейнере или что-то такое
PM MAIL   Вверх
THandle
Дата 27.8.2009, 08:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Хранитель Клуба
Group Icon
Награды: 1



Профиль
Группа: Админ
Сообщений: 3639
Регистрация: 31.7.2007
Где: Moscow, Dubai

Репутация: 65
Всего: 372



Romikgy, http://www.citforum.ru/programming/cpp/com_4_21.shtml

Да и вообще пробежался по гуглу - примеры есть на разных форумах.
PM   Вверх
Romikgy
Дата 27.8.2009, 11:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: 26
Всего: 146



сибо оле контейнер прикольная вещь smile
но стало интересно как можно программно входить в режим изменения и выходить ?
допустим у Paint.Picture дабл кликом защел и закрыл окошко вышел все гуд 
а когда создаешь ворд документ , дабл клик зашел .... выйти я не понял как ((( и если вышел (используя другой компанент ) в редактирование уже не попасть (((
подскажите о гуру оле контейнеров ....


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
Romikgy
Дата 29.8.2009, 11:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: 26
Всего: 146



хотелось бы уточнить последний вопрос....
если создать через оле контейнер допустим рисунок паинта,
у него (в принципе как и у многих) есть 2 команды
user posted image
изменить и открыть 
когда вызываешь изменить 
user posted image
срабатывает событие актив! 
при выходе из такого режима срабатывает событие деактив!
все хорошо .... (хотя не понятно как выходить из такого состояния)

но если использовать 
из менюшки пункт открыть 
user posted image

тогда вышеописаные методы не срабатывают .....
при выходе из этого режима
user posted image
есть пункт "выход и возврат" 

как отловить событие при нажатии на этот пункт меню??????


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
THandle
Дата 29.8.2009, 12:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Хранитель Клуба
Group Icon
Награды: 1



Профиль
Группа: Админ
Сообщений: 3639
Регистрация: 31.7.2007
Где: Moscow, Dubai

Репутация: 65
Всего: 372



Цитата(Romikgy @  29.8.2009,  12:40 Найти цитируемый пост)
все хорошо .... (хотя не понятно как выходить из такого состояния)


Деактивируются, к примеру, при передачи фокуса другому компоненту... Для отслежки есть OnActivate и OnDeactivate.

Вообще я сам с контейнерами никогда не работал... smile Но интересно стало.
Код


procedure TForm2.Timer1Timer(Sender: TObject);
var
  s: String;
begin
  case OleContainer1.State of
    osEmpty: s := 'Пусто';
    osLoaded: s := 'Зугружено';
    osRunning: s := 'Выполняется';
    osOpen: s := 'Открыто';
    osInPlaceActive: s := 'Без меню';
    osUIActive: s := 'С меню';
  end;
  Caption := s;
end;


таким вот кодом я воспользовался чтобы отследить, как меняется собственно свойство State. (Код бредовый, но довольно удобный ))).
При открытом окошке Paint это свойство стоит в osOpen, при выходе становится osLoaded. Значит надо как то отслеживать это изменение...
Может у контейнера есть какое-то такое событие... Но можно попробовать самому либо отлавливать это изменение State, либо попробовать его проверять при получении фокуса нашим окном: проверять - есть ли этот Paint или нет...

Это так, поток мыслей smile 
PM   Вверх
Romikgy
Дата 29.8.2009, 16:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: 26
Всего: 146



интересная идея спасибо ,
но хотелось по событию

Цитата(THandle @  29.8.2009,  11:21 Найти цитируемый пост)
Для отслежки есть OnActivate и OnDeactivate.

это я в курсе и в моем посте выше я это описывал ...
Цитата(Romikgy @  29.8.2009,  10:40 Найти цитируемый пост)
срабатывает событие актив! 
при выходе из такого режима срабатывает событие деактив!




--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0716 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.