2009-04-14 4 views
1

Je me mouille actuellement avec Win CE 5.0 pour mettre à jour du code sur une plate-forme existante. Nous sommes intéressés par le déploiement d'un shell personnalisé/écran d'accueil/lanceur d'applications et j'ai quelques questions:Personnalisation/remplacement de la barre des tâches de Windows CE 5.0?

1) Nous utilisons le shell CE standard et je suppose qu'il peut être personnalisé parce que la source le code est disponible avec Platform Builder. Je me demandais comment "douloureux" ce serait de le remplacer complètement par quelque chose comme une barre d'état en haut de l'écran (pensez iPhone). Je pensais que la commutation de tâches pouvait alors être gérée exclusivement par des touches de raccourci. J'ai mes doutes à ce sujet.

2) Si elle ne peut pas être supprimée, la barre des tâches peut-elle être redimensionnée et déplacée vers le haut de l'écran? Essentiellement, nous essayons de trouver un moyen de réserver les 20 premières rangées de pixels en haut de l'écran pour notre propre barre d'état et d'éviter que les fenêtres d'application maximisées ne se superposent.

Merci beaucoup pour votre aide.

-ksudeadeye

Répondre

1

J'étais heureux et fâché quand j'ai trouvé la solution parce que c'est plus facile que prévu. Pour 2) l'espace de réserve que vous devez faire ceci:

RECT rc; 
SetRect(&rc, 0, 25, GetSystemMetrics(SM_CXSCREEN),GetSystemMetrics(SM_CYSCREEN)); 
SystemParametersInfoW(SPI_SETWORKAREA, 0, (void*) &rc, SPIF_SENDCHANGE); 

Avec ce code, vous réserve de 25 pixels en haut de l'écran. : D

Si vous avez des doutes peut-être this peut vous aider ou this.

Bonne chance.

+0

Nous avons fini par trouver le drapeau SPI_SETWORKAREA aussi bien pendant le développement, mais cela a pris du temps. Espérons que cela épargnera à quelqu'un d'autre quelques maux de tête. Merci. :) –

1

Pour masquer la barre des tâches est un simple changement de registre:

; Hide the windows tasbar by default. 
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shell\AutoHide] 
""=dword:1 
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shell\OnTop] 
""=dword:0 

En ce qui concerne la personnalisation, vous-même, qui est un peu plus de travail, et non quelque chose que j'ai essayé .

0

J'ai une certaine expérience avec la modification de la barre des tâches dans CE 5.0. Ce n'est pas une tâche facile, mais les résultats peuvent vraiment ajouter cette touche personnelle à l'appareil. J'ai été chargé d'ajouter une deuxième barre des tâches en mode utilisateur avec une boîte de dialogue de mot de passe et un deuxième type de notification de shell pour ajouter des icônes à la barre d'utilisateur. En fin de compte, il s'agit simplement de la programmation standard de Windows CE - la barre des tâches, le plateau de notification, le bouton de démarrage, etc. sont comme toutes les autres fenêtres de l'environnement CE.

Vous devriez commencer à explorer ici: C: \ WINCE500 \ PUBLIC \ shell \ OAK \ HPC \ EXPLORER \ BARRETACHES \ taskbar.cpp

Attention, cloner votre code, et être prêt pour un bon nombre de cycles de débogage . C'est plus de 5000 lignes de code spaghetti sérieux.