Название: Работа QDataStrem с QIcon Отправлено: Waryable от Ноябрь 26, 2008, 12:57 Проблема в том, что рабочий(не поврежденный) файл иконки проходя через QDataStrem становится не рабочим:
Код: QIcon icon(путь к файлу иконки) Вручную "отсекать" ненужные биты не очень-то хотца. Требуется(если он существует) боле-мене простой способ обойти проблему. Название: Re: Работа QDataStrem с QIcon Отправлено: EhTemka от Ноябрь 26, 2008, 18:47 Если тебе нужно просто скопировать файл, то есть
bool QFile::copy ( const QString & fileName, const QString & newName ) [static] А чтобы загрузить, то что ты создал, нужно делать так: Код:
Название: Re: Работа QDataStrem с QIcon Отправлено: Waryable от Ноябрь 27, 2008, 08:22 EhTemka, копирование в чистом виде не совсем подходит для моей задачи. Предполагается, что в общем случае картинка берется не обязательно из файла. Иконка может создаваться путем ее рисования, либо редактирование ранее созданных. Т.е. не всегда будет существовать исходный файл, либо исходная иконка редактируется перед записью.
Спасибо за пример. Честно говоря пока не пробовал его на работоспособность, но после записи файла-копии метод QIcon icon(путь к файлу-копии иконки) не возращает валидной переменной icon. Проверял так: setWindowIcon(icon). Иконки у приложения не появлялось. Тут пришла мысля реализации через Buffer ByteArray... Название: Re: Работа QDataStrem с QIcon Отправлено: BRE от Ноябрь 27, 2008, 09:03 Так может работать/редактировать QPixmap, а когда понадобиться делать из него QIcon.
Название: Re: Работа QDataStrem с QIcon Отправлено: Waryable от Ноябрь 27, 2008, 10:24 Так может работать/редактировать QPixmap, а когда понадобиться делать из него QIcon. Да походу это тажа зопа, токо в профиль ;) Я тут потыркался. И пришел к выводу, что проблема в записи любого изображения в файл через поток датастрим. Кто знает как оформить эту процедуру? Выручайте! :)Название: Re: Работа QDataStrem с QIcon Отправлено: BRE от Ноябрь 27, 2008, 11:29 Да походу это тажа зопа, токо в профиль ;) Я тут потыркался. И пришел к выводу, что проблема в записи любого изображения в файл через поток датастрим. Кто знает как оформить эту процедуру? Выручайте! :) QPixmap::save()Название: Re: Работа QDataStrem с QIcon Отправлено: Waryable от Ноябрь 27, 2008, 11:45 Цитировать QPixmap::save() Хехе. Я так и сделал. Только через QImage::save() . Но всеравно спасибо.Название: Re: Работа QDataStrem с QIcon Отправлено: EhTemka от Ноябрь 27, 2008, 12:16 EhTemka, копирование в чистом виде не совсем подходит для моей задачи. Предполагается, что в общем случае картинка берется не обязательно из файла. Иконка может создаваться путем ее рисования, либо редактирование ранее созданных. Т.е. не всегда будет существовать исходный файл, либо исходная иконка редактируется перед записью. Спасибо за пример. Честно говоря пока не пробовал его на работоспособность, но после записи файла-копии метод QIcon icon(путь к файлу-копии иконки) не возращает валидной переменной icon. Проверял так: setWindowIcon(icon). Иконки у приложения не появлялось. Тут пришла мысля реализации через Buffer ByteArray... Ну так и не должен QIcon напрямую в конструкторе читать файл-копию, так как это не какой-нибудь jpeg или PNG, а просто файл с определенным форматом класса. Я же написал как этот файл считать в QIcon ??? Так должно работать |