begin process at 2012 05 30 04:59:30
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

API

 > 

utilistation de WS_TABSTOP


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

utilistation de WS_TABSTOP

mardi 31 janvier 2006 à 15:47:37 | utilistation de WS_TABSTOP

spiky31

Membre Club
re Bonjour

J'ai créé une boite de dialogue avec beaucoup de controles, certains ont le style WS_TABSTOP. Le probleme c'est que quand j'appuis sur la touche TAB le focus ne change pas. J'ai du oublier quelque chose mais quoi ? (Ca fait une heure que je trifouille la MSDN mais j'ai rien trouvé)

Si quelqu'un a une idée je suis toute ouie ...

Merci d'avance
mardi 31 janvier 2006 à 16:36:55 | Re : utilistation de WS_TABSTOP

BruNews

Administrateur CodeS-SourceS
Tu es bien certain que c'est une dialogbox ??? Normalement le système prend en charge par défaut le déplacement par la touche TAB.

ciao...
[ Lien ]
BruNews, MVP VC++
mardi 31 janvier 2006 à 16:51:18 | Re : utilistation de WS_TABSTOP

spiky31

Membre Club
J'en suis certain. C'est vraiment trés bizare ...

Voila ce que dit la MSDN :
"The WS_TABSTOP style specifies the controls to which the user can move by pressing the TAB key or SHIFT+TAB keys.

When the user presses TAB or SHIFT+TAB, the system first determines whether these keys are processed by the control that currently has the input focus. It sends the control a WM_GETDLGCODE message, and if the control returns DLGC_WANTTAB, the system passes the keys to the control. Otherwise, the system uses the GetNextDlgTabItem function to locate the next control that is visible, not disabled, and that has the WS_TABSTOP style"

Je suis pas trés doué en anglais mais d'apres ce que j'ai compris le controle qui a le focus ne doit pas renvoyer la valeur DLGC_WANTTAB. Mais ca ne m'avance pas plus ...
mardi 31 janvier 2006 à 17:20:43 | Re : utilistation de WS_TABSTOP

BruNews

Administrateur CodeS-SourceS
download ça:
http://www.cppfrance.com/code.aspx?ID=35788

et regarde le fichier rc, tu verras que absolument tout est par défaut et tab_stop fonctionne.

ciao...
[ Lien ]
BruNews, MVP VC++
mardi 31 janvier 2006 à 20:44:23 | Re : utilistation de WS_TABSTOP

spiky31

Membre Club
Alors voila je t'envoie le code que j'ai créer qui est tout simple mais ou tab_stop ne fonctionne pas. Tu me dira ce que t'en penses ...

main.c :
#include <windows.h>

#define ID_DIALOG 10

LRESULT CALLBACK mainProc(HWND hwnd,UINT uMsg,WPARAM wParam,LPARAM lParam);

int main()
{
MSG msg;

CreateDialog(GetModuleHandle(NULL),MAKEINTRESOURCE(ID_DIALOG),NULL,(WNDPROC)mainProc);

while ( GetMessage(&msg,NULL,0,0) )
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}

return msg.wParam;
}

LRESULT CALLBACK mainProc(HWND hwnd,UINT uMsg,WPARAM wParam,LPARAM lParam)
{
switch (uMsg)
{
case WM_COMMAND :
switch (LOWORD(wParam))
{
case IDCANCEL :
PostQuitMessage(0);
return 0;

default :
return 0;
}

default :
return 0;
}
}

main.rc :
#include <windows.h>

#define ID_DIALOG 10

ID_DIALOG DIALOGEX 0, 0, 120, 40
STYLE DS_CENTER | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Test"
FONT 10, "MS Sans Serif"
BEGIN
    DEFPUSHBUTTON   "OK",IDOK,14,10,40,16,WS_TABSTOP
    PUSHBUTTON      "Annuler",IDCANCEL,72,10,40,16,WS_TABSTOP
END

Voila c'est tout
mardi 31 janvier 2006 à 21:28:35 | Re : utilistation de WS_TABSTOP

BruNews

Administrateur CodeS-SourceS
Réponse acceptée !
Solution ici:
DIALOGBOX PAR CREATEDIALOG (WIN32)
http://www.cppfrance.com/code.aspx?id=21138

ciao...
[ Lien ]
BruNews, MVP VC++
mardi 31 janvier 2006 à 22:29:49 | Re : utilistation de WS_TABSTOP

spiky31

Membre Club
Encore une fois merci beaucoup !!!!!!!

Va faloir que j'étudie le pourquoi du comment de ton code (et oui je débute en programmation API windows) mais c'est genial de voir que ca marche enfin !!
mercredi 1 février 2006 à 09:42:38 | Re : utilistation de WS_TABSTOP

BruNews

Administrateur CodeS-SourceS
C'est le:
if(!IsDialogMessage(hmain, &msg))
dans la boucle GetMessage(...)
et attention à bien mettre hmain à 0 quand détruite.

ciao...
[ Lien ]
BruNews, MVP VC++


Cette discussion est classée dans : ws, tabstop, utilistation


Répondre à ce message

Sujets en rapport avec ce message

Problème avec WS_TABSTOP [ par LaPatoshe ] Bonjour, je programme une petite appli en C avec l'API Win32 (pas de MFC) et je ne parviens pas à créer des controles pouvant gagner le Focus via la t Probleme WS_TABSTOP [ par fredsor ] Bonjour,Je mets bien WS_TABSTOP pour tous les composants créé (CreateWIndowEx... )et j'ai rajouté a la fin, while (GetMessage(&msg, NULL, 0, 0) > 0)   WS_TABSTOP [ par lektrosonic ] Bonjour, j'ai creer mes controles avec CreateWindowEx et j'ai applique le style WS_TABSTOP..mais quand je lance l'application et je tape tab le cursus probleme bizzare.... [ par lektrosonic ] Bonsoir, j ai code ce client...Code C:#include #include #include #define ID_CONNECT 1#define ID_SEND 2#define WM_SOCKET (WM_APP + 100)<br CreateWindow qui plante [ par mogwai93 ] Bonjourj'ai un createwindow qui plante sans raison :LRESULT CALLBACK DlgProc(HWND hWndParent, UINT Msg, WPARAM wParam, LPARAM lParam){HWND hWnd;... sw TRANSPARENTE [ par kiki67100 ] Salut voila jai trouver un code mais une fenetre TRANSPARENTE http://files.codes-sources.com/fichier.aspx?id=9615&f=Main.cpp  mais le probleme se que pb de scrolling avec CRichEditView [ par hdaniel ] Bonjour, J'ai dévelloppe un programme avec un éditeur. J'ai utilise une SDI dérivé de CRichEditView. je dois éditer plusieurs lignes de grandes tai Comment faire un \n dans un edit? [ par by_rabbit_08 ] Bonjour!Grâce à la fonction SetDlgItemText, je cherche à inscrire du texte dans un edit. Dans ce texte, il y a un \n pour un retour à la ligne.Mais lo Bind echouant.. [ par lektrosonic ] Bonsoir, deux applications, bon pour etre original: serveur et client.Chacune de leur cote effectue ce code:Serveur:----------------------   if(WSASta Focus et couleur... en C pour PocketPC [ par fredsor ] Bonjour a vousDans mon projet, je dois créer différents composant visuel pour Pocket PC : libellé, editbox,bouton et listbox (la aussi pa le choix)- C


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,686 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales