2010-10-01 2 views
2

Привет, этот вопрос или проблема. У меня очень тяжело. У меня есть поиск и запрос в университете, и я не знаю, как это сделать, или даже если это возможно.Как сохранить элементы управления, находящиеся внутри формы

Здесь мы идем ... Я делаю фото или графический редактор с возможностью позволить пользователю вставлять кнопки в верхней части отредактированного изображения (эти кнопки при нажатии воспроизводят аудиофайл) все это работает так далеко. НО В конце, когда пользователь заканчивает свою работу, я нуждаюсь в нем, чтобы сохранить его, поэтому его можно отправить и просмотреть другими.
Теперь я думаю, что знаю, как сохранить отредактированное изображение, но эта доза не содержит кнопок (элементов управления) ... это похоже на то, когда мы сохраняем файл в точке питания, и мы отправляем его другим, которые содержат аудио и изображение. Надеюсь, что вы, ребята, понимаете, если так, то кто-нибудь может указать мне, как это сделать, или показать мне, насколько это возможно.

(Некоторые люди сказали мне использовать метаданные, другие - файл манифеста, но я так запутался). слишком плохой я не могу опубликовать фотографии работы, пока я не получу 10 баллов ...... Спасибо за первые четыре быстрых ответа и извините ошибку, не сообщив, что я работаю над C# 3.5 .Net и в приложении Windows Form.
Кажется, вы все прекрасно понимаете, что я пытаюсь сделать здесь. Я опубликую изображение благодаря точкам, которые я получаю от TheVillageIdiot. и о XML, который я никогда не использовал, прежде чем я буду стараться изо всех сил понять вас, ребята, но если кто-нибудь может показать мне пример два или прочитать (доза xml работает в приложении Windows form.) alt text Здесь ... (извините, если изображение слишком велико) пример того, что программа делает до сих пор, что черный прозрачный ящик его MouseOverBackColor ... при нажатии на него загружает плеер, который воспроизводит звук x_x. Это похоже на тегирование, но с аудио.

Мне очень нужна помощь, я достиг своего предела, не знаю, должны были выглядеть, и время убивает меня.


HI Я снова на этот раз с простой пример того, что мне нужно, чтобы узнать, как сохранить динамичную buttonarray Сегодня 10/11/10 (я сделал Acount с! @ # $% Акций чтобы поделиться образцом с вами, ребята, я надеюсь, что этот доцент беспокоит любого здесь) вот Link. я снова объясню, что мне нужно сделать, и у меня нет идеи или кода о том, как это сделать. Представьте человека, который использует программу, и создайте, как 5 кнопок, которые были в форме, ее нужно сохранить, чтобы он мог ее отправить другим, которые имеют одну и ту же программу, таким образом, другие могут просматривать кнопки, созданные пользователем. надеюсь, вы, ребята, можете мне помочь с простым примером, я действительно подбираю примерный рабочий код. Примечание. Я работаю над приложением Windows Form WFA C# 3.5 .net M.V.studio2010 (файл, который я дал выше, имеет резервную копию с 2008 vercion) thanx заранее.

+1

сейчас у вас есть 10+ баллов: D – TheVillageIdiot

+0

Как вы хотите распространять изображение? Имейте в виду, что то, что вы хотите сделать, требует, чтобы получатель имел вашу программу! Для XML: см. XMLReader и XMLWriter. –

+0

Да, вы можете использовать XML из C#. Есть несколько классов, которые делают его довольно легким, но для его повеселения требуется немного работы. XML, безусловно, может хранить то, что вам нужно, в очень аккуратном формате (прямоугольные углы и связанный звуковой файл). – ssube

ответ

1

Как и в случае с jim, я предлагаю иметь архив какой-то (ZIP или другой), содержащий все необходимые средства.

Храните изображения и звуковые файлы по имени или контрольной сумме в архиве и сохраняйте метаданные (позиции кнопок, имена, используемые носители и т. Д., Мы будем называть это файлом определения) в сохраненном файле в архиве. Вы можете использовать XML, чтобы сделать его понятным для человека.

Весь пакет будет прост в распространении и использовании, поскольку все будет содержаться в архиве. Вашему приложению просто нужно сканировать архивы, проверять каждый архив для действительного файла определения и загружать те, которые вам нужны.

Edit: Переход на скриншоте вы публикуемую и мое понимание проблемы, я хочу предложить следующее:

Когда пользователь создает кнопку (определяется как прямоугольная область или «горячая точка»), откройте диалог с просьбой связать звуковой файл. Затем хранить в верхнем левом углу и нижний правый углы кнопки и имя файла в файле XML, что-то вроде этого:

<Button name="myButton!"> 
    <Position top="128" left="128" /> 
    <Size height="200" width="200" /> 
    <Audio filename="something.mp3" /> 
</Button> 

Теперь при компиляции плагина, создавать ZIP-архив. Внутри поместите файл XML и все необходимые аудиофайлы.

При загрузке плагина сначала прочитайте XML-файл и найдите аудиофайл (предположим, что все аудиофайлы находятся в том же архиве, что и файл XML). Затем создайте кнопку и добавьте аудиофайлы, как, скажем, его свойство Tag. Назначьте все кнопки одним общим событием OnClick и в событии OnClick воспроизведите аудиофайл, указанный тегом текущего объекта.

Если вы не понимаете, что я имею в виду, я попытаюсь подробнее остановиться. Я думаю, что этот метод должен работать аккуратно и быть довольно простым в работе. :)

+0

Здравствуйте @peachykeen и другие, о которых я много читал в последнее время о сериализации, и это путь. Теперь я знаю о xml, двоичной и SOAP-сериализации. узнав, что я вернулся, чтобы перечитать все ваши ответы, у каждого была хорошая благодарность. но все, что вы сказали выше, точно, что нужно делать ТОЧНО! Я не вижу другого способа, поэтому я не буду сохранять изображение и дополнительную информацию (текст) в XML-файле (мой собственный формат) и сохранять аудиофайлы в той же папке (уже сделано), если вы рядом. привет или что-то в этом роде. – Bloodsville

+0

Планируете ли вы фактически сохранить изображение в XML? Это может быть немного беспокоить, так как вам придется кодировать его base64. Вероятно, вам лучше сохранить его как отдельный файл, так как вы все равно делаете это со звуком. – ssube

1

Одно решение: создайте ZIP-файл, содержащий как аудио, так и изображения.

+0

Как примечание, так работает Office 2007 и выше. Все файлы (docx, xlsx, pptx и т. Д.) Являются zip-архивами, которые содержат все файлы, необходимые для создания документа. Просто измените расширение на один из этих файлов на .zip, и вы поймете, что я имею в виду. – NotMe

+0

WOW lol, это очень круто и интересно, Крис .... но можете ли вы помочь мне немного больше, я разместил очень простой образец проекта. любые способы плохо читают, теперь плохо ищут, как создать zip-файл. плохо держать вас всех в курсе. – Bloodsville

0

В принципе, у вас есть две вещи, которые вы хотите сохранить.

Отредактированное изображение, а затем расположение кнопок и их действия.

У вас есть часть сохранения изображений, поэтому теперь вам нужно сохранить другую информацию. Это можно рассматривать как «метаданные», и вы можете сохранить его в некотором формате, который вы изобретаете, чтобы он мог его загрузить. Как правило, это было бы проще всего сделать с помощью XML-сериализации. Так что изучите это.

0

Предполагая, что вы пишете автономное приложение и нет веб-приложения.

Если вы добавляете Button в качестве .NET-компонента (новая кнопка()), это невозможно сделать, если вы не предоставите ему собственное программное обеспечение для проигрывателя.

Если вы хотите предоставить собственный плеер, создайте (отдельный) файл с информацией о кнопке и прочитайте файл, а затем заново создайте кнопку. (Имейте в виду, что все ресурсы - jpeg, mp3) также должны быть доступны на целевом ПК). Кроме того, упакуйте всю информацию в один файл (jpeg, информация о кнопках, mp3) и сохраните этот файл.

НТН

Марио

0

У вас есть два варианта

  1. Создайте свой собственный формат, а затем сделать приложение игрока, что читать его и воспроизводить результаты
  2. Найдите некоторый формат, который поддерживает ваш функции и создать такой файл. Это хорошо работает, если вы ожидаете, что у других будет игрок.

Для # 2, вот некоторые форматы, которые могли бы поддержать то, что вы хотите сделать

  1. флэш
  2. PDF
  3. Составитель HTML -отвечу - нужно IE играть http://en.wikipedia.org/wiki/MHTML
  4. EXE - создать код с ресурсами и скомпилировать его - в основном ваш игрок + ресурсы
  5. PowerPoint
+0

Думаю, в этом случае использование известного формата архива будет лучше, чем формат специального назначения. Я бы сказал, что ZIP может быть проще работать, чем с теми, которые вы указали (в общем, просто в формате архива) и, вероятно, будет более гибким. Все пять из ваших предложений №2 полностью действительны, они могут быть просто излишними или неудобными для этого. – ssube

+0

У тех, кого я выбрал, есть игроки, которые могут «сыграть» свое взаимодействие. Смысл - все они имеют способ представления изображения с горячей точкой, которая воспроизводит звук. Ни один почтовый клиент не поймет, как это сделать. –

+0

Lou Franco У вас появилась идея создать свой собственный формат, а затем использовать то же приложение, которое заставляет его (файл) читать, это была идея или первая идея, которую я имел .... но я понятия не имею, как туда добраться. .. тем временем я делаю приложение с помощью всех элементов управления и т. д. – Bloodsville

Смежные вопросы