begin process at 2010 03 22 08:58:41
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

Pbl presse papier avec DialogBox


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

Pbl presse papier avec DialogBox

mardi 27 janvier 2004 à 18:34:53 | Pbl presse papier avec DialogBox

largoce

Bonjour,
Je suis sous VC++.
J'ai créé une dialogBox avec des champs à remplir.
Je voudrais qu'en cliquant sur OK, un champs soit mis dans le presse papier.
J'ai parcouru des bouquins, j'ai vu des exmples avec des fenêtres. Toujours est-il que moi j'ai tjs:
error C2440: '=' : impossible de convertir de 'void *' en 'PTSTR'
Pour:
pText = malloc ((lstrlen (szlogin) + 1) * sizeof (TCHAR)) ;

Voici mon code:

#include <windows.h>
#include "resource.h"

LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM) ;

#define CF_TCHAR CF_TEXT
TCHAR szlogin[] = TEXT ("Mettre le login") ;

int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
PSTR szCmdLine, int iCmdShow)
{
HWND hDlg;
MSG msg ;
hDlg=CreateDialog(hInstance,(LPCTSTR)IDD_DIALOG1,NULL,(DLGPROC)WndProc);
ShowWindow(hDlg,iCmdShow);
while(GetMessage(&msg,hDlg,0,0)==TRUE)
{
TranslateMessage (&msg) ;
DispatchMessage (&msg) ;
}
return 0;
}

LRESULT CALLBACK WndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{ int Select;
static PTSTR pText ;
BOOL bEnable ;
HGLOBAL hGlobal ;
HDC hdc ;
PTSTR pGlobal ;
PAINTSTRUCT ps ;
RECT rect ;

switch (message)
{
case WM_CREATE:
free (pText) ;
pText = NULL ;
pText = malloc ((lstrlen (szlogin) + 1) * sizeof (TCHAR)) ; //PREMIERE ERREUR
lstrcpy (pText, szlogin) ;
InvalidateRect (hwnd, NULL, TRUE) ;
return 0 ;

case WM_COMMAND:
switch (LOWORD (wParam))
{
case IDOK:

hGlobal = GlobalAlloc (GHND | GMEM_SHARE,
(lstrlen (pText) + 1) * sizeof (TCHAR)) ; //DEUXIEME ERREUR
pGlobal = GlobalLock (hGlobal) ;
lstrcpy (pGlobal, pText) ;
GlobalUnlock (hGlobal) ;

OpenClipboard (hwnd) ;
EmptyClipboard () ;
SetClipboardData (CF_TCHAR, hGlobal) ;
CloseClipboard () ;

if (LOWORD (wParam) == IDOK)
return 0 ;
return TRUE;


case IDCANCEL:
if (pText)
free (pText) ;
EndDialog(hwnd,Select);
PostQuitMessage(0);
return TRUE;
}
default:
return FALSE;
}
}


Ca fait plus d'une journée que je suis dessus. Quand c'est une fenêtre ça marche bien... je comprends rien.
Merci de votre aide.
mardi 27 janvier 2004 à 18:43:00 | Re : Pbl presse papier avec DialogBox

BruNews

Administrateur CodeS-SourceS
mets un cast, un pointeur ne fait que donner une adresse, il peut se caster en tout type de pointeur.
ciao...
BruNews, Admin CS.
mardi 27 janvier 2004 à 21:01:09 | Re : Pbl presse papier avec DialogBox

largoce

J'ai du mal à saisir...
J'ai beau chercher partout sur le net mais y a pas grand chose;
Je me suis inspiré de Petzold5 pour le presse papier. Sa marche dans une fenêtre mais pas dans ma dialogBox.
Je suis tjs bloqué.
Peux-tu expliciter ton message stp ? (je débuteuuu... si C trop technique j'ai du mal)
Merci.
mardi 27 janvier 2004 à 21:15:30 | Re : Pbl presse papier avec DialogBox

BruNews

Administrateur CodeS-SourceS
static PTSTR pText;
pText = (PTSTR) malloc(....
Que ce soit DialogBox ou autre n'entre pour rien dans l'affaire, il s'agit simplemet de refiler au clipboard une zone memoire qu'il va s'approprier, rien de plus.
Et fais gaffe au deroulement de ton prog et surtout de s allocs memoire qui me semblent troubles.

Si prob persiste passe moi un message par le site mais regarde bien Petzold avant, la reponse est dedans.
ciao...
BruNews, Admin CS.


Cette discussion est classée dans : hwnd, return, tchar, ptext, hglobal


Répondre à ce message

Sujets en rapport avec ce message

Dll Visual Aide [ par TheMaster ] Salut!j'ai un probleme, j'ai créer un logiciel permettant de visualiser des images.Les images sont stocke en ressource dans un dll.Mais je n'arrive pa Pb sur un ptit bout de prog en DirectX.... [ par Haldwin ] Salut a tous....Voila j'ai deux ptits pbs quand je lance cette appli ci-dessous... (VC++)La première est q'une fois sur deux ma variable hWnd apres le ressources et API !!!! [ par Xs ] salut !voila, pour me simplifier la tache, j'utlise les ressources pour creer une boite de dialog (sous VC++ 6).mais j'obtiens, lors de la compilation PB EditBox [ par SfyLer ] Bonjour à tous !J'ai créé un scanner de port sous dos, et j'ai commencer a le faire sous windows, j'ai presque fini le seul pb que j'ai c'est que je n Petite question ayant attrait à la gestion de fichier. [ par meteore ] Voila je suis en train de faire un petit logiciel pour le classement de mes cds.J'ai donc créer une fonction permettant d'ajouter un cd dans une boite API, probleme de synchronisation?? refresh visible dans la dlg:( [ par JackosKing ] yOp,Bon voilà, je debute en API? et je voulais coder des menus persos, le probleme c'est que ma fenetre n'arrete pas de se refresh, meme quand il n'y Problème menu [ par LordBob ] Bonjour a tous,voila j'ai ecrit le tout début d'un programme... celui ci pour l'instant, ne fait que se ranger dans la systray... j'ai commencé a fair Problème de creation d'application en win32 [ par zibo3 ] J'ai un petit soucis, je me lance dans la programmation graphique windows et comme j'ai lu qu'il fallait éviter les MFC, je m'y efforce. Mon premier p Prob WIN32 [ par AngeloVivaldi ] bonjour, voici un code ke g tapé pour mon apprentissage de la prog Graphique :#include LRESULT CALLBACK WinProc(HWND hWnd, UINT uMsg, WPARAM wParam, L aide moi acompiler ce graph stp [ par temoin ] Bonjour mon erreur est ceci je tout suivi a la lettre je mais les link et je installer le sdk de microsoft qui fait le 200 meg et auusi je mais les li


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

 
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,484 sec (4)

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