Главная

Еще вопрос про BBitmap и Атрибуты

как прочитать Bitmap и Icon атрибуты?
вот примерный код:
BNode node;
attr_info attrInfo;
node.SetTo(entry);
node.GetAttrInfo(«BEOS:ICON»,&attrInfo);
node.ReadAttr(«BEOS:ICON»,attrInfo.type,0,buf,attrInfo.size);
как объявлять buf?
и как его потом преобразовать в BBitmap?
и еще вопос:
в QuickRes нарисовал Bitmap присвоил имена
присоединил к проекту файл *.rsrc
а как в программе использовать эти рисунки?

Re: Еще вопрос про BBitmap и Атрибуты

BResources *rsrc = be_app–>AppResources();
size_t length = 0;
const void *data = rsrc–>LoadResource('BBMP', name, & length);
BMessage msg;

if (msg.Unflatten((const char *) data) != B_OK)
return false;

BBitmap *bmp = new BBitmap(&msg);

Для обычных катинок:
BBitmap *bmp = BTranslationUtils::GetBitmap('JPEG', resources_name);

К проекту надо подсоединить libtranslation.so

Re: Еще вопрос про BBitmap и Атрибуты

А как быть с Node?

Re: Еще вопрос про BBitmap и Атрибуты

BEntry entry(«/boot/…/HexJuggler»);
BNode node(& entry);
attr_info attrInfo;

node.GetAttrInfo(«BEOS:L:STD_ICON», & attrInfo);
uint8 *buf = new uint8[attrInfo.size];
node.ReadAttr(«BEOS:L:STD_ICON», attrInfo.type, 0, buf, attrInfo.size);

BBitmap icon(BRect(0, 0, 31, 31), B_CMAP8);
icon.SetBits((const void *) buf, attrInfo.size, 0, B_CMAP8);

Re: Еще вопрос про BBitmap и Атрибуты

не получается…
наверно это не совсем Bitmap…
вот например в _packages_ в дано или 5.0 есть в атрибутах us_english флаг
а как его вытащить?

Re: Еще вопрос про BBitmap и Атрибуты

Пример для «BBitmap и Атрибуты»:
«angelfire.com/alt/vlad/files/test1.zip»
_packages_ — это папка в дистрибутиве? То у неё нет атрибута us_english. us_english- это папка внутри неё. Есть утилита listattr- показывает все атрибуты.

Отправить комментарий

Содержание этого поля является приватным и не предназначено к показу.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Allowed HTML tags: <a> <em> <i> <img> <strong> <b> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Строки и параграфы переносятся автоматически.

Подробнее о форматировании

CAPTCHA
Введите перечисленные символы, чтобы мы убедились, что вы не робот. Не требуется для зарегистрированных пользователей.
e
j
Z
N
Y
2
Enter the code without spaces and pay attention to upper/lower case.