2009-09-08 9 views

Répondre

2

La manière la plus simple est d'utiliser un éditeur de ressources pour concevoir votre boîte de dialogue. Code :: Blocks ne vient pas avec un, mais ResEdit est celui que j'ai utilisé.

Si vous modifiez un fichier .rc à la main, vous souhaitez ajouter une ligne semblable à ce qui suit dans la section de définition de dialogue:

CONTROL   "", IDC_SPIN1, UPDOWN_CLASS, UDS_ARROWKEYS, 7, 22, 11, 14 

Si vous voulez ajouter programatically, vous pouvez le faire grâce à la fonction API CreateWindow, par exemple

HWND hwndUpDown = CreateWindow(UPDOWN_CLASS, NULL, 
         WS_CHILD | WS_VISIBLE | UDS_ARROWKEYS, 
         7, 22, 11, 14, 
         hwndDlg, NULL, hInst, NULL); 

où le paramètre hwndDlg est le HWND de la fenêtre de dialogue. Un bon endroit pour appeler ceci est quand vous manipulez le message WM_INITDIALOG pour la boîte de dialogue.

+0

ResEdit est très utile – ukanth

0

Cela dépend. Il y a deux façons de créer un dialogue. Par programme, ou via une ressource de dialogue. Dans le premier cas, vous appelez CreateDialogIndirect, dans le second cas CreateDialog. Je suppose que vous appelez CreateDialogIndirect puisque vous mentionnez "en C". Dans le modèle de boîte de dialogue que vous utilisez, ajoutez simplement le contrôle de rotation. Vous devrez l'identifier par son nom dans DLGTEMPLATEEX.windowClass.

Questions connexes