1

Salut !

J’ai un problème au niveau des Toolbars : je voulais savoir s’il était possible qu’un toolbar soit plus «Passif» que celui que j’utilise plus bas. Je voudrais pouvoir faire des choses différentes du toolbar mais que l’on puisse s’en servir quand même. Ce serait comme le toolbar de l’écran HOME du TIOS : On peut faire des opérations quelconques, puis on appuie sur [F*] pour utiliser les options du toolbar…

Voici la partie de mon source où j’utilise le toolbar :

ICON icone_rech={{0x0,0x7FE0,0x4020,0x47C0,0x4820,0x5010,0x5010,0x5010,0x5010,0x5010,0x4830, 0x47F8,0x403C,0x7FEE,0x6,0x0}};

ICON icone_hlp={{0x0,0x0,0xFFFF,0x0,0x32E7,0x4A94,0x4A94,0x4A96,0x7A94,0x4A94,0x4AE7,0x0,
0xFFFF,0x0,0x0,0x0}};

ICON icone_ext={{0x3808,0x202C,0x3288,0x2128,0x3AA4,0x0,0xFF0,0xC30,0xA50,0x990,0x990,
0xA50,0xC30,0xFF0,0x0,0x0}};

HANDLE toolb=MenuNew(2, 150, 18);

MenuAddIcon(toolb,0,&icone_rech,1,0);
MenuAddText(toolb,1,"Recherche Par Symbole",11,0);
MenuAddText(toolb,1,"Recherche Par N° Atome",12,0);

MenuAddIcon(toolb,0,&icone_hlp,2,0);
MenuAddText(toolb,2,"Rubrique d'Aide",21,0);
MenuAddText(toolb,2,"Crédits-Version",22,0);

MenuAddIcon(toolb,0,&icone_ext,3,0);
MenuAddText(toolb,3,"Retour à la séléction",31,0);
MenuAddText(toolb,3,"Quitter",32,0);

menu_exec = MenuBegin(HeapDeref(toolb),0,0,0);

if (menu==1)
{
MenuSubStat(menu_exec,31,FALSE);
} // L’item 31 («Retour à la sélection») est brouillé si la variable menu = 1

result=MenuKey(menu_exec,ngetchx());

Merci pour tout!!
miam
François BALLAND

Site Ti : http://www.balland.org

2

Déjà:

- il faudrait prévoir la possibilité que la touche ne soit pas prise en compte par le menu. Donc result=MenuKey(menu_exec,ngetchx()); ne suffit pas. Il faut au moins:
do {
result=MenuKey(menu_exec,ngetchx());
} while (result==-2);

mais tu ne pouvais pas le savoir, on vient de juste de mettre à jour la documentation de menus.h il y a quelques heures.
- il faut nettoyer après avoir utilisé le menu! Rajoute ça à la fin du programme:
MenuEnd(menu_exec);
HeapUnlock(toolb);
HeapFree(toolb);
MenuUpdate();


Ensuite pour en venir à ce que tu désires faire: Il suffit d'attendre l'appui d'une touche dans la boucle que je viens de te faire rajouter:
do {
while (!kbhit()) {
//fais quelque chose
};
result=MenuKey(menu_exec,ngetchx());
} while (result==-2);

[edit]Edité par Kevin Kofler le 01-04-2002 à 05:47:30[/edit]
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

3

Merci ! smilesmile

Par contre pour la dernière partie de ton post, je ne comprends pas t bien :
le "//fais quelque chose". C'est la partie de mon prgm où je ne me sert pas du toolbar?
Ou c'est le toolbar?

merci encore
François BALLAND

Site Ti : http://www.balland.org

4

Oui, c'est la partie de ton programme qui ne se sert pas du ToolBar.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

5

RrRRrr!!madragemadattentionfou
J'y arrive pas!! en fait j'ai deux progs :
1) le tool bar et tous le résultats: boite de dialogue etc...
2)et un autre prog qui utilise des _rowread et des images(mais il n'utilise pas de toolbar).

Je voudrais les "fusionner", si tu vois ce que je veux dire. Mais comment faire ?

merci love
François BALLAND

Site Ti : http://www.balland.org

6

Tu ne peux pas mélanger _rowread et kbhit/ngetchx. Donc soit tu utilises ngetchx pour le programme avec les images, soit tu changes la boucle pour utiliser _rowread partout (à la place de kbhit et ngetchx) - mais alors, tu dois toi-même tester les touches Fn, ESC, ENTER et le curseur, convertir ton résultat _rowread en codes ngetchx et passer ces derniers à MenuKey. Et attention, MenuKey a besoin d'avoir les interruptions activées parce qu'il utilise ngetchx lui-même, donc il faut réactiver les interruptions avant d'appeler MenuKey.
[edit]Edité par Kevin Kofler le 04-04-2002 à 19:20:53[/edit]
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

7

arf il va pas comprendre grin
avatar
納 豆パワー!
I becamed a natto!!!1!one!

8

S'il n'arrive pas à comprendre ce que j'explique (qui est relativement simple), il ne devrait pas essayer d'utiliser des menus en C!
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

9

c qu'il deviendrait méchant avec l'age kevin ....

10

Si qd même, j'suis pas trisotrisotriso.
Je vais pas m'embêter, je vais utiliser des ngetchx() partout, j'espère que ce ne sera pas trop lent (Je n'ai jamais utilisé de ngetchx() auparavant, tellement ça avait l'air pourri.). Ou alors je vais faire me faire moi-même un genre de toolbar. @+
François BALLAND

Site Ti : http://www.balland.org