Carbide / Symbian C ++ - изменить значок приложения

Я использую Carbide (только что обновленный до 2.0) для разработки приложения S60 3rd Edition.

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

Все мои попытки возиться с файлами .mif пока не увенчались успехом. У меня есть значок 44x44 .svg, который я сделал с помощью Illustrator. Может ли кто-нибудь помочь мне в правильном направлении?

Спасибо!


person adam    schedule 12.12.2008    source источник


Ответы (4)


Чтобы изменить значок приложения при запуске приложения, используйте (в строке состояния):

CEikStatusPane* sp=iEikonEnv->AppUiFactory()->StatusPane();
CAknContextPane* cp=(CAknContextPane *)sp->ControlL(TUid::Uid(EEikStatusPaneUidContext));
_LIT(KContextBitMapFile, "my_bitmap_file.mbm");
CFbsBitmap* bitmap = iEikonEnv->CreateBitmapL(KContextBitMapFile, EMbmBitmap);
CleanupStack::PushL(bitmap);
CFbsBitmap*  bitmapmask = iEikonEnv->CreateBitmapL(KContextBitMapFile, EMbmBitmapMask);
CleanupStack::PushL(bitmapmask);
cp->SetPicture(bitmap, bitmapmask);
CleanupStack::Pop(); // bitmapmask
CleanupStack::Pop(); // bitmap
DrawNow();

Мне не известно о какой-либо возможности программного изменения значка приложения в списке меню, кроме переустановки приложения с другим файлом MIF.

person Kasprzol    schedule 15.12.2008

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

person Riho    schedule 15.12.2008


С последней версией QMake и Qt SDK (4.6.2) вам не нужно создавать файлы .mif самостоятельно. Подойдет файл SVG.

Для получения более подробных инструкций см .: Как установить значок и заголовок приложения Qt в Symbian S60.

Хотя в статье используется Qt Creator, пока вы используете QMake, это то же самое.

person Hendy Irawan    schedule 31.03.2010