Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Clipboard




Обмін даними в Windows

Для користувачів DOS комп’ютер – це деякий ”склад” програмних продуктів, які зовсім не зв’язані один з одним. Дуже часто користувач використовує окремо текстовий та графічний редактори. Альтернатива – це робота громіздких пакетах, які суміщають в собі текстові та графічні можливості. Особливо неприємним в DOS є перевантаження даних з одного продукту в інший. Не дивлячись на існування деяких стандартів, велика кількість DOS-програм зберігає дані в тому вигляді, в якому це захотілося автору. Існують сотні драйверів, які перетворюють дані в різні формати.

На відміну від DOS, Windows, як багатозадачне середовище, з самого початку була розрахована на високий ступінь інтеграції її компонентів. Один з найважливіших елементів такої інтеграції є можливість ефективного обміну даними між різними продуктами.

Буфер проміжного зберігання даних (вбудований). При роботі Windows - Clipboard постійно активний. Він доступний всім Windows-програмам. Обмін даними через Clipboard виконується таким чином.

В продукті-джерелі його власними засобами виділяється необхідні дані. Командою Copy (Ctrl + C) виділений фрагмент заноситься до Clipboard.

Можливе також використання команди Cut (Ctrl + X). Те саме, що Copy, а з тою різницею, що дані вилучаються з оригіналу. Потім переходимо до продукту-приймача і розміщуємо курсор у те місце, куди потрібно встановити дані з Clipboard. Після цього виконується команда Paste (Ctrl + V). Обмін закінчено. Комбінації Ctrl + C, Ctrl + X, Ctrl + V є універсальним стандартом Windows. Команди Cut, Copy, Paste є практично у всіх Windows-продуктах в меню Edit.

Механізм, що забезпечує обмін даними між різними продуктами називається –динамічний обмін даними (DDE – Dynamic Data Exchange).

 

 

Той самий порядок дій забезпечує обмін даними і в рамках одного продукту. Тому відпадає необхідність вбудовувати в продукти внутрішні засоби копіювання та переміщення об’єктів при програмування під Windows.

Недолік – неможливість накопичення даних у буфері проміжного зберігання. При розміщенні в Clipboard нового фрагменту, старий автоматично вилучається. Тому, наприклад, при копіюванні трьох об’єктів із різних місць одного документа в одне місце в іншому, треба три рази переключитись між джерелом та приймачем. Є обмеження – десять сторінок тексту або одне повно екранне кольорове графічне зображення (є обмеження за об’ємом).

 

 

Головна перевага обміну даними через Clipboard – це можливість об’єднання в одному документі об’єктів з різних продуктів та автоматичне перетворення форматів. Для всіх Windows-продуктів було встановлено ряд стандартів, в яких можуть представлятися дані. Для цих стандартів представлення даних виконується при операціях з Clipboard автоматично і непомітно для користувача.

Наприклад програма Viewer забезпечує:

- перегляд даних в Clipboard в різних форматах;

- запис вмісту Clipboard в файл;

- читання даних в Clipboard з файлу;

- очистку Clipboard.

Додатково у Windows реалізовано механізм динамічного обміну даними зі зв’язуванням. Суть його полягає в тому, що об’єкт який вставляється через Clipboard зберігає свій зв’язок з оригіналом і при внесенні змін в оригінал може автоматично обновлятись.

Наприклад, в Microsoft Excel створимо невелику таблицю і запишемо її в деякому файлі. Потім включимо Write, відкриємо в ньому довільний текстовий документ і спробуємо встановити туди цю таблицю за методом DDE. Для цього виділимо цю таблицю в Microsoft Excel і розмістимо її в Clipboard командою Copy. Потім переключимось на Write, але виконаємо не команду Paste, а команду Paste Link із меню Edit. В тексті у вікні редактора Write з’явиться зображення таблиці. Тепер, якщо перейти знову до Microsoft Excel і внести деякі зміни, то виявиться, що ці ж зміни відбудуться і в копії цієї таблиці в редакторі Write. Цей зв’язок зберігається і після закриття продукту. Тобто в довільний момент, коли вносяться зміни в оригінал, можна бути впевненим в тому, що ці зміни відбудуться у всіх документах, пов’язаних з оригіналом.

З одним оригіналом можна зв’язати довільну кількість документів (”зіркоподібний” тип зв’язку). Це дає нові можливості, такі як автоматичне оновлення копій.

Окрім ”зіркоподібного” зв’язку можливе зв’язування ”за ланцюжком”, коли джерелом для наступного зв’язку буде не оригінал, а раніше зв’язаний об’єкт. В цьому випадку не Paste Link, а просто команда Paste.

Команда Links дозволяє проглянути всі зв’язки для даного документа, розірвати зв’язок, ”переключити” зв’язок з одного об’єкту на інший і встановити режим ручної активації зв’язків, коли оновлення інформації в документі із зміною оригіналу відбувається не автоматично, а тільки після виконання відповідної команди.

Але користувач хотів би пересувати ланцюжки на екрані так само легко, як це робиться в реальному житті.

Зв’язування та вбудовування об’єктів (Object Linking & Embedding, OLE1)

Для користувачів основне нововведення технології OLE – можливість активації вбудованих об’єктів.

За попередніми технологіями встановлений об’єкт був складовою частиною документа, в якому він розташовувався, відображався в ньому, але внести зміни в цей об’єкт було досить складно. Для цього потрібно запустити продукт, в якому він був створений, відкрити файл даного об’єкту, змінити його певним чином і записати на диск. Потім через Clipboard виправлений об’єкт копіювався на своє місце, а стару версію в документі потрібно було знищити. (При DDE дві останні операції не потрібні).

 

 

Для роботи за технологією OLE необхідна така сама послідовність операцій, як і раніше, при цьому, якщо продукт підтримує OLE, то він сам виконує обмін даними вже за цією технологією. Документ з вбудованими OLE-об’єктами виглядає так само, як і з фрагментами, що встановлені через Clipboard. Але тепер при подвійному натисканні на мишу в полі об’єкту він активується:

- запускається продукт, який породив цей об’єкт;

- об’єкт передається у вікно продукту для редагування, запису і інших операцій, які доступні батьківській програмі.

 

 

Після завершення роботи з об’єктом батьківська програма закривається, а змінений об’єкт автоматично передається назад в документ, звідки він був викликаний. Таким чином, відпадає необхідність запам’ятовувати імена батьківського продукту та файла, в якому міститься встановлений об’єкт, Windows все пам’ятає.

В OLE ”об’єкт” це нове поняття. Раніше об’єкт – це довільний фрагмент, який переноситься з одного продукту в інший. Насправді переносився не сам фрагмент, а тільки його ”екранний образ”, продукт-джерело перетворювало дані із свого внутрішнього формату в один із стандартів Windows і в такому вигляді фрагмент вставлявся в продукт-приймач.

В OLE – ”об’єкт” це комплекс, який складається із даних у внутрішньому форматі батьківського продукту, представленому в одному із стандартних форматів Windows, і інформації про програму яка його створила, розмір, час створення та інше.

В такому вигляді – об’єкт це деяка закінчена структура. При його перенесенні із одного документа в інший він зберігає всі свої особливості незалежно від типу документа, в якому в біжучий момент знаходиться.

Якщо DDE дозволяє вставляти зв’язування тільки об’єкти, які є файловими, то в OLE цього обмеження немає.




Поделиться с друзьями:


Дата добавления: 2014-01-11; Просмотров: 429; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.014 сек.