Je ne peux pas ouvrir ta page (sécurité de l'entreprise).
Le but de cette interface est de proposer à l'utilisateur plusieurs choix et en fonction des choix, générer un fichier.
En gros, le choix de l'utilisateur doit paramétrer une action qui sera lancer après.
C'est pas très précis tout cela ! Pour les choix tu as les listes, les listes déroulantes, les cases à cocher, les radio bouton, .... Si tu as visual studio, tu peux faire cela avec .net (C# ou visual basic .net ou C++ managé) ou alors avec MFC.
Ici tu est sur le forum C, donc on peut te proposer API Win32.
Pour récuperer la velur d'une case qui est coché, il faut d'abord vérifier l'état de la case (si elle est cochée) puis récuperer sa propriété Text. De manière simple, cela donne ceci par exemple lors du cliaue sur un bouton, je récupère la valeur de ma case à cocher chkChoix1 si elle est bien cochée:
Pour répondre à ta première question: comme dit plus haut, c'est du C++/CLI donc qui utilise les classes du framework .NET. La propriété Text de la classe Checkbox renvoie un String ^ et non un std::string, ce sont deux classes différentes.
Pour ta deuxième question : il suffit de changer la portée d valeur au sein de la classe, dans mon exemple elle est locale à la méthode. Pour y acceder sur plusieurs méthodes il suffit de déclarer cette variable en tant qu'attribut (variable membre privée, locale à la classe cette fois-ci). Déclares cet attribut en dehors des méthodes dans la classe Form1 :
ref class Form1 : public Form
{
// du code
private:
String ^ valeur;
// du code
};
error C2679: '<<' binaire : aucun opérateur trouvé qui accepte un opérande de partie droite de type 'System::String ^' (ou il n'existe pas de conversion acceptable)
Pour être plus précis, je veux que mon programme enregistre la valeur que j'ai coché et qu'ensuite cette valeur soit écrite dans un fichier. Voici mon code :
String n'est pas std::string, l'opérateur "<<" n'existe pas pour ces types de paramètre.
Il faut, par exemple, convertir votre String^ en std::string, mais c'est une mauvaise idée car les chaines .NET sont en UNICODE et que votre flux C++ STL ne supporte que l'ASCII.
De plus, faire apparaître des chaines de caractère venant de l'IHM dans un fichier est une grosse erreur de conception. Vous ne pourrez plus changer facilement votre IHM et vous ne pourrez plus la localiser pour plusieurs langues.
Je recherche un CDI/CDD/mission freelance comme Architecte Logiciel/ Expert Technique sur technologies Microsoft.
Tu es partis pour utiliser du .Net, autant tout faire en .Net :
void Truc()
{
String ^ fileName = "Chemin\\vers\\ton\\fichier.txt";
System::IO::StreamWriter ^outfile = gcnew System::IO::StreamWriter(filename, true); // true pour ajouter à la suite sans tout effacer
try
{
// write pour écrire dans le flux
// pour ajouter un retour ligne, utilises WriteLine
outfile->Write(paramFormat);
}
finally
{
delete outfile;
}
}
Avant de poster un message, vérifiez la date du sujet dans lequel vous comptiez intervenir.
Si le dernier message sur le sujet date de plus de deux mois, mieux vaut ne pas répondre. En effet, le déterrage d'un sujet nuit au bon fonctionnement du forum, et l'informatique pouvant grandement changer en quelques mois il n'est donc que rarement pertinent de déterrer un vieux sujet.
Au lieu de déterrer un sujet il est préférable :
soit de contacter directement le membre voulu par messagerie privée en cliquant sur son pseudonyme pour accéder à sa page profil, puis sur le lien "Ecrire un message"
soit de créer un nouveau sujet décrivant votre propre contexte
ne pas répondre à un déterrage et le signaler à la modération
Recueil de code C et C++ http://fvirtman.free.fr/recueil/index.html
Recueil de code C et C++ http://fvirtman.free.fr/recueil/index.html
Pas d'aide concernant le code par MP, le forum est là pour ça :)