Accéder à GetDlgItemText depuis du code écrit en c

Résolu
cs_Salim45 Messages postés 5 Date d'inscription vendredi 29 avril 2005 Statut Membre Dernière intervention 2 août 2007 - 15 avril 2007 à 11:39
julien_boss Messages postés 165 Date d'inscription samedi 4 juin 2005 Statut Membre Dernière intervention 24 octobre 2007 - 16 avril 2007 à 23:50
Rebonjour à tous.


Je souhaiterais accéder à la fonction API "SetDlgItemText" depuis une fonction C.

L'idée c'est que TC5747_Init() affiche un texte dans edit box ( ex: essai) via SetDlgItemText.


J'ai une classe (C++) CCAM de type CFormView dans CAM.cpp:
void CCAM::OnInitCamI2c()

{
    TC5747_Init(); //fonction écrite en C

}


et TC5747_Init() qui se trouve dans CAM_init_template.c:
void TC5747_Init( void )

{
    CCAM_TC5747 cam;
    cam.SetDlgItemText(IDC_UPLOAD_ FIRMWARE,"essai");

}

faisant  #include "CAM.h" dans CAM_init_template.h, j'ai "error C2065: 'CCAM_TC5747' : undeclared identifier" comme erreur.


Quelqu'un saurait-il comment faire ?

Merci par avance pour vos réponses.
A voir également:

3 réponses

cs_Salim45 Messages postés 5 Date d'inscription vendredi 29 avril 2005 Statut Membre Dernière intervention 2 août 2007
15 avril 2007 à 15:48
Salut Nico,

Merci pour ta réponse. Ca à le mérite d'être clair. Je suis justement en train d'utiliser l'api SetDlgItemText
directement sans passer par la classe. Je but sur le handle de ma fenêtre.
Je vais y arriver un jour.
A++.b
3
ndubien Messages postés 557 Date d'inscription dimanche 25 septembre 2005 Statut Membre Dernière intervention 10 mai 2014 4
15 avril 2007 à 15:28
Bonjour,

Comme je viens de le demander dans une de mes questions :
http://www.cppfrance.com/infomsg_EST-POSSIBLE-CREER-CLASS_922228.aspx#2

Il n'existe pas de class en C donc le fait que ton programme ne se compile pas est normal.

Enfin je pense.

Nico</gras>
0
julien_boss Messages postés 165 Date d'inscription samedi 4 juin 2005 Statut Membre Dernière intervention 24 octobre 2007
16 avril 2007 à 23:50
Lorsque tu as créé ton controle edit, tu as du mettre au 8eme argument de la fonction CreateWindowEx() (ou 7eme pr CreateWindow() ) le handle (qui permet de controler un "composant" windows) de la fenetre parente à ton controle (fenetre qui contient ton controle :])
Le 1er parametre de SetDlgItemText() est le handle de cette fenetre parente.

Au passage, pk voulais tu utiliser SetDlgItemText dans une classe ? Il n'appartient à aucune classe (sauf si tu implémentes une méthode du meme nom dans une classe), il fait parti des API windows qui sont toutes écrites en C (no class comme l'a dit ton coupain :D)
0