Accueil > Forum > > > > API win32
API win32
vendredi 24 novembre 2006 à 16:12:43 |
API win32

rachid12450
|
Bonjour à tous ma question: y'a t-il un moyen de récupérer la hateur des étquettes d'un TAB_CONTROL avec par exemple GetSystemMetrics() ou autre fonction merçi d'avance à bientôt
|
|
vendredi 24 novembre 2006 à 19:41:38 |
Re : API win32
|
lundi 27 novembre 2006 à 12:44:01 |
Re : API win32 TABCONTROL

rachid12450
|
Bonjour voilà j'apporte quelques précisions je crée une fenêtre principale hwndMain dans le WM_CREATE de cette fenêtre je crée un WC_TABCONTROL : GetClientRect(hwndMain, &rc); hwnd_TabCtrl = CreateWindowEx(0, WC_TABCONTROL, "", WS_CHILD | WS_VISIBLE, 0, 0, rc.right, rc.bottom, hwndMain,(HMENU)IDHWNDTAB, hInst, NULL); je crée une autre fenêtre dans la surface client du TABCONTROL
GetClientRect(hwnd_TabCTRL, &rc); hwndTableau = CreateWindowEx(WS_EX_CLIENTEDGE, "StructureTableau", "XXXXXXXXX", WS_CHILD | WS_VISIBLE | WS_HSCROLL, rc.left, rc.top, rc.right, rc.bottom, hwnd_TabCtrl,NULL, hInst, NULL); en utilsant par exemple des lignes du type: sprintf(Buffer,"Largeur de la surface client %i", rc.right); MessageBox(hwndMain, Buffer, "Message information", MB_OK) ; j'arrive à constater un certain nombre de chose: 1) la surface client de la fenêtre principale et du tab_ctrl sont les mêmes ce qui me parait étrange pour être concret: hwnd_Main rc.left=0, rc.top=0, rc.right=996, rc.bottom=540. Idem pour hwnd_TabCtrl. 2) la troisième fenêtre créée dans la surface client du Tab_Ctrl est par contre réduite: hwnd_Tableau rc.left=0, rc.top=0, rc.right=992, rc.bottom=515. mes questions sont: pourquoi la fenêtre principale et la fenêtre TabCtrl ont les mêmes dimensions de leurs surfaces client? la différence entre 540 et 515 est ce que elle correspond à la hauteur des étiquettes du TabCtrl? si oui est ce que cette différence ne dépend pas de la résolution de l'écran?
|
|
lundi 27 novembre 2006 à 13:37:01 |
Re : API win32

vecchio56
|
Rien d'extraordinaire à ce que deux fenêtres fassent la même taille, je ne vois pas le problème Pour vérifier simplement la taille des fenêtres, tu peux utiliser Spy++ ou ceciLa taille en pixels ne diffère pas selon la résolution. C'est juste qu'avec une petite résolution, tu verra ta fenêtre plus grande _____________________________________ Un éditeur de ressources gratuit pour Windows
|
|
lundi 27 novembre 2006 à 16:48:16 |
Re : API win32

rachid12450
|
merçi pour le tuyau "Spy++" effectivement c'est très utile
mais je reviens quand même à ma question
j'ai toujours les trois fenêtres: 1) hwndMain fenêtre principale 2) hwnd_TabCtrl fenêtre enfant couvrant la surface client de la fenêtre principale 3) hwndTableau couvre la surface client de hwnd_TabCtrl
dans la procédure de la fenêtre principale je dois traîter un changement de dimension ou un déplacement de la fenêtre principale je procède ainsi: case WM_SIZE:
GetClientRect(hwndMain, &rc);
MoveWindow(hwnd_TabCtrl, rc.left, rc.top, rc.right, rc.bottom, TRUE);
GetClientRect(hwndTabCtrl, &rc);
//si je met:
MoveWindow(hwndTableau, rc.left, rc.top, rc.right, rc.bottom, TRUE);//"les étiquettes" du Tab_Ctrl //sont perdues
//par contre si je met :
MoveWindow(hwndTableau, rc.left+5, rc.top+25, rc.right-10, rc.bottom-30, TRUE);
break;
//les étiquettes sont là //alors que la création du Tab_Ctrl s'est faite ainsi:
GetClientRect(hwndMain, &rc);
hwnd_TabCtrl =
CreateWindowEx(0, WC_TABCONTROL, "", WS_CHILD | WS_VISIBLE, 0, 0, rc.right, rc.bottom, hwndMain,(HMENU)IDHWNDTAB, hInst, NULL);
je ne sais pas mais il y a quelques chose qui m'échappe est ce que je dois utiliser le Spy++ pour déterminer les +5, +25, -10 et -30 utilisés dans MoveWindow(hwndTableau, rc.left+5, rc.top+25, rc.right-10, rc.bottom-30, TRUE)?
|
|
lundi 4 décembre 2006 à 11:41:58 |
Re : API win32

rachid12450
|
Réponse acceptée !
Bonjour à tous, je reviens sur cette question: "Peut on modifier la hauteur des onglets d'un TAB_CONTROL" après une recherche personnelle avec l'aide de ce site fabuleux la réponse est oui cette hauteur n'est pas constante, elle dépend de la hauteur tout bêtement de la hauteur de la font utilisée dans le TabControl par exemple hwndTabCtrl est le handle du TabControl il suffit de: LOGFONT lf; memset(&lf, 0, sizeof(LOGFONT)); pour initialiser à 0 la structure LOGFONT; lf.lfHeight = 35; lf.lfWeight = FW_BOLD; une constante définissant une certaine épaisseur de la font; hfont = CreateFontIndirect(&lf); hdc = GetDC(hwndTabCtrl); SelectObject(hdc, hfont);
et le tour est joué: les dimensions des onglets du TabCtrl notamment leur hauteur sont équivelentes aux dimensions du text écrit dans ces onglets avec la nouvelle font sélectionnée.
si on veut créer une fenêtre enfant dans le TabCtrl, il faut faire attention pour ne pas empiéter sur les onglets avec leur nouvelle taille par exemple utiliser: GetTextExtentPoint32(hdc, Buffer, 40, &size); Buffer étant par exemple la string d'un onglet du TabCtrl en créant la fenêtre enfant il faut respecter la hauteur de la font qui se retrouve dans size.cy par exemple on crée une fenêtre enfant sur l'ensemble de la surface du TabCtrl par: CreateWindowEx(WS_EX_CLIENTEDGE, "Ma fenêtre enfant", "XXXXXXXXX", WS_CHILD | WS_VISIBLE | WS_HSCROLL,rc.left+5, rc.top+5+size.cy, rc.right-10, rc.bottom-10-size.cy, hwndTabCtrl,NULL, hInst, NULL); le "5" de chaque coté est pour respecter la bordure le size.cy est pour respecter la hauteur des onglets
voilà à très bientôt
|
|
Cette discussion est classée dans : api, win32
Répondre à ce message
Sujets en rapport avec ce message
api win32 sdk [ par fabpdg ]
je recherche comment utiliser les fonfions, comme netsessionemun en delphi.Delphi ne reconnaît pas les fonctions api win32 sdk.Comment et quels sont l
equivalent win32 pour linux [ par mbab ]
Bonjour, je debute en c++ et je dois realiser une interface graphique en c++ sous linux. Y a t-il des api tel win32 (pour windows )mais sous linux. Si
Lien DLL 16 / API WIN32 [ par CoreBreaker ]
Bonjour quelqu'un sait-il comment une fonction de l'API Win32 dans une DLL 16bits ?Et de manière générale comment appeler une fonction d'une DLL 32bit
l'API win32 sait-elle lire? [ par supergrey ]
Bonjour, je voudrais savoir s'il est possible de récupérer le texte visible dans les page web que je visite sur le net avec un programme.Merci.
2 questions en api win32 [ par youpiyoyo ]
j'aimerai tout d'abord savoir comment mettre un titre sur ma boite de dlg en api win32 sachant ke a border=none dans la gestion des ressources. a mon
Question API Win32 [ par LordBob ]
Bonjours a tous,j'aimerais avoir quelques info sur les API suivante:EnumWindowsGetWindowcar sinon il faudrai que j'aille voir sur le site de la MSDN m
Existe-t-il un InvokeHelper en Api win32 [ par youpiyoyo ]
comme le titre l'indique j'aurai besoin de sauvegarder un fichier. j'aurais aimer un boite de dlg pour cela.merci d'avance...
Slider bar en API Win32 [ par sebseb42 ]
voila, j'utilise un controle Slider dans une fenetre que je gere en API Win32 (pas de MFC)je voudrais definir sa position initial, pour placer ;e curs
Coloration de texte dans un EDIT (API WIN32) [ par Nebula ]
Tout est dit dans le sujet...Petites précisions : je ne travaille qu'en C, et j'aimerais savoir si la chose est possible, car les RICHEDIT sont (beauc
Coloration de texte dans un EDIT (API WIN32) [ par Nebula ]
---Hum, apparemment mon premier post n'est pas passé, je retente le coup !---Tout est dit dans le sujet...Petites précisions : je ne travaille qu'en C
Livres en rapport
|
Derniers Blogs
TECHDAYS PARIS 2010 : PLEINIèRE DERNIER JOURTECHDAYS PARIS 2010 : PLEINIèRE DERNIER JOUR par ROMELARD Fabrice
Cette session est la dernière pleinière de ces 3 jours de TechDays Paris 2010. Généralement, cette troisième journée est plus axée sur l'avenir vu par Microsoft. Après un retour sur l'avenir vu par la Science Fiction ou par ...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice UNE JOLIE-HORLOGE ET PAS QU'UN PEU !UNE JOLIE-HORLOGE ET PAS QU'UN PEU ! par neodante
Pour les possesseurs d'iPhone, ça y est Bijin Tokei - qui se traduit littéralement en Français par " Jolie Horloge " - est arrivé et GRATUITEMENT s'il vous plaît ! Après la version Tokyo, Hokkaido, night club, racing, Gal, "pour les mademoiselles'", . voi...
Cliquez pour lire la suite de l'article par neodante TECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICESTECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICES par ROMELARD Fabrice
Animé par: Gaetan Bouveret et Julien Chomarat Business Connectivity Services (BCS) est dans SharePoint 2010 la version 2 de Business Data Catalog (BDC dans SharePoint 2007). Il s'agit de la solution permettant de visualiser des données provenan...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice [DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE[DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE par orion
Comme de nombreux geek, je suis un grand amateur de série TV et je rate régulièrement des épisodes de mes séries préférés. Une solution s'offre à vous avec ce merveilleux site : Tv Gorge - www.tvgorge.com Moteur de recherche à l'appui, vous pouvez ...
Cliquez pour lire la suite de l'article par orion TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Vincent Bellet et Baptiste Giraudier La BI dans SharePoint 2010, Les nouveaux services d'application dans SP2010 et SQL Server Reporting services 2008 R2. La BI dans SharePoint est généralisée pour tous afin de permettre à tous les coll...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Forum
RE : WIN APIRE : WIN API par racpp
Cliquez pour lire la suite par racpp
Logiciels
DB-MAIN (9.1.0)DB-MAIN (9.1.0)DB-MAIN is a data-modeling and data-architecture tool. It is designed to help developers and anal... Cliquez pour télécharger DB-MAIN Xilisoft DPG Convertisseur (5.1.37.0120)XILISOFT DPG CONVERTISSEUR (5.1.37.0120)Xilisoft DPG Convertisseur offre aux fans de Nintendo DS une bonne solution leur permettant de dé... Cliquez pour télécharger Xilisoft DPG Convertisseur GraphicsGale (2.01.01)GRAPHICSGALE (2.01.01)GraphicsGale est un logiciel de PixelArt avec de nombreuse fonctionnalités permettant de réalisé ... Cliquez pour télécharger GraphicsGale Architecte 3D (Platinum 2010)ARCHITECTE 3D (PLATINUM 2010)Architecte 3D Platinium vous permet de concevoir facilement les plans votre future maison, de l'é... Cliquez pour télécharger Architecte 3D TeamViewer 5 (TeamViewer 5)TEAMVIEWER 5 (TEAMVIEWER 5)Dépanner un ami,expliquer une manipulation devient un jeu d'enfant.
Prise en main d'un autre ord... Cliquez pour télécharger TeamViewer 5
|