Creating a Skin

Windows Mobile Not SupportedWindows Embedded CE Supported

9/9/2008

Você pode criar um personalizado usuário interface (interface do usuário), also Known As uma capa. Capas permitem que você personalizar a aparência de controles e outros elementos interface do usuário. De exemplo, você pode usar essa funcionalidade para alteração de bitmaps System-defined exibida na barra de ferramentas Botões. Por adequando exclusivamente o interface do usuário para o fator forma, você diferenciar seus produtos. Você também pode personalizar janela controles, comum controles e a área não cliente do Windows.

Para suporte a criação de capas, Windows CE 5.0 separa a codificar desenho para controles e as janelas área não cliente do resto da codificar que implementa esses elementos interface do usuário. De exemplo, dois componentes implementar o barra de rolagem: Sbcmn e Sbcmnview. O componente Sbcmnview inclui a codificar desenho para o barra de rolagem, e o componente Sbcmn inclui a funcionalidade da barra de rolagem.

Quando você compilar um executar-imagem tempo, você pode incluir uma capa predefinida ou criar seu próprios capa. Windows Embedded CE inclui dois capas predefinidas, uma que é semelhante de Windows 95 UI e uma que é semelhante de Windows XP UI. Exibição-com base em OS designs incluem a capa 95–Style Windows Por padrão. Para incluir uma capa Windows XP–STYLE, adicionar o Sample Skin Catalog Windows_XP-LIKE item para seu design OS.

Para incluir seu próprio personalizado capa, definir a variável de ambiente __SYSGEN_REPLACESKIN no seu design OS. Você também deve definir o seguinte variáveis ao especificar as bibliotecas para seu personalizado capa:

  • GWES_REPLACE: Especifica a lista das bibliotecas a ser substituído que têm arquivos recurso associado com eles, de exemplo, GWES_REPLACE = lbctrlview btnctrlview.
  • GWES_REPLACE_COMPONENTS: Especifica a lista das bibliotecas que você estiver substituindo que não têm arquivos recurso associado com eles.

Você também pode usar as variáveis GWES_REPLACE e GWES_REPLACE_COMPONENTS para substituir outros componentes interface do usuário. Para obter informações sobre como personalizar um componente interface do usuário usando as variáveis GWES_REPLACE e GWES_REPLACE_COMPONENTS, consulte tópico Personalizando um componente interface do usuário.

Você cria seu próprio personalizado capa, modificando a usar como padrão desenho codificar para os controles e área não cliente do Windows. Este codificar está contido nos arquivos localizados dentro das subpastas da Diretório de %_WINCEROOT%\Public\Common\Oak\Drivers\Skinnableui. Cada controle que você pode personalizar, bem como a área não cliente das janelas, corresponde a uma classe C++. Você personalizar o interface do usuário, alterando a implementação dos métodos que contêm essas classes. Quando você compilar um executar-imagem tempo que inclui um interface do usuário, such as um total com base em qualquer modelo design Except for Digital Media Receiver, Microsoft Platform Builder e gateway automaticamente incorpora suas implementações modificadas para o módulo gwe.

Observação

Porque seu codificar modificado é executado como parte de módulo gwe e, portanto, como parte de OS, você deve ser extremamente cuidadoso garantir que seu codificar seja executado corretamente e não desestabilizar o OS.

Para identificar a localidade dos componentes substituídos para capa-habilitado controles interface do usuário, use o variável de ambiente REPLACE_ROOT, localizado em % _WINCEROOT%\Public\Common\Cesysgen\Makefile. Se você tiver criado personalizado skinning bibliotecas, em seguida, você pode definir REPLACE_ROOT para especificar o caminho que seu personalizado bibliotecas serão vinculadas do. O sistema compilar será aspecto no $(REPLACE_ROOT)\Oak\Lib\$(_CPUINDPATH) caminho para seus bibliotecas skinning. Se você não fizer isso explicitamente definido um valor para REPLACE_ROOT, $(_PROJECTROOT) é Por padrão usados.

Quando você modifica a codificar desenho para o interface do usuário, você poderá executar inicializações única em sua implementação das CacheView_t::Init e CommCtrlView_t::Init Métodos. O CacheView_t classe também armazena um armazenar em cache de desenhar objetos necessários para os elementos gráficos, janela e Events Subsystem (GWES).

Quando você cria uma capa, considere coordenar suas personalizações interface do usuário com modificações para o shell. Para obter mais informações, consulte Shell OS Design Development.

Observação

Quando você desenvolve e depuração um personalizado capa, você pode usar o FillRect função para obter comentários visual sobre a extensão da área de desenho preenchendo os retângulos desenho com um pincel de cor sólida.O seguinte exemplo mostra como chamar FillRect Para fornecer tais comentários visual.

FillRect(hdc, &rc, CreateSolidBrush(RGB(0xFF, 0x00, 0x00)));

See Also

Concepts

Customizing Common Controls
Customizing Window Controls
Customizing the Nonclient Area of Windows
Using Internal GDI Methods

Other Resources

Graphics, Windowing and Events (GWES)