adresser les objets crées
Bonjour.:D
Je continue ma migration. J'en sais un peu plus sur mon environnement, mais je continue a butter sur des problèmes technologiques apparemment simples.
Je sais que mon projet est un projet .NET, crée par visual studio par le choix initiale de faire un projet à partir de code existant. Les résultats de compilation sont cohérent: tout ce qui vient du précédent framewok de BCB est refusé, comme je m'y attendait le reste passe.
Je commence maintenant à adresser les objets visuels crées par form.
J'ai crée une form pour commencer et j'ai crée un contrôle pour essayer d' adresser les éléments de départ. J'ai des difficultés pour adresser les méthodes et les contrôles qui sont dans la form. Je vais donc mettre les éléments clefs de la form et montrer quelques éléments que j'ai adressé avec les messages correspondant du compilateur.
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
void show( int mode)
{
ShowWindow( mode);
}
FormDeDepart(void)
{
InitializeComponent();
menuprincipal();
//TODO: ajoutez ici le code du constructeur
//
} |
ce code compile correctement.
maintenant je ne sais pas appeler les codes à partir des autres classes. Je vais dans un premier temps parler de l'adressage du menuprincipal qui est un contrôle créer par form
Code:
1 2 3 4 5 6
|
iCountOfMenuItems = ChargeurdeSpécification::FormDeDepart->menuprincipal; //->Items->Count;
// Disable all the Main menu items and their sub menu items
for (iIndex = 0;iIndex < iCountOfMenuItems;iIndex++)
{
ChargeurdeSpécification::FormDeDepart::menuprincipal; //->Items->Items[iIndex]->Enabled = false; |
J'ai dans ce bout de code essayé les deux approche de l'objet
le premier me dit:
Code:
1 2 3
|
1>MenuToolbarManager.cpp(54): error C2275: 'ChargeurdeSpécification::FormDeDepart'*: utilisation non conforme de ce type comme expression
1>MenuToolbarManager.cpp(54): error C2227: la partie gauche de '->menuprincipal' doit pointer vers un type class/struct/union/générique |
et le deuxième me dit
Code:
1 2 3
|
1>MenuToolbarManager.cpp(58): error C2039: 'menuprincipal' : n'est pas membre de 'ChargeurdeSpécification::FormDeDepart'
1> d:\usr\memoria\dev\aln_kernel\make\FormDeDepart.h(18) : voir la déclaration de 'ChargeurdeSpécification::FormDeDepart' |
et j'ai plusieurs exemples avec le même comportement. J'ai notamment essayer une approche différente avec les mêmes diagnostiques
Code:
1 2 3 4 5 6
|
iCountOfMenuItems = ChargeurdeSpécification::FormDeDepart->menuprincipal(); //->Items->Count;
// Disable all the Main menu items and their sub menu items
for (iIndex = 0;iIndex < iCountOfMenuItems;iIndex++)
{
ChargeurdeSpécification::FormDeDepart::menuprincipal(); //->Items->Items[iIndex]->Enabled = false; |
J'ai besoin d'adresser les primitives et les donnée du menu principal et je ne sais comment faire. Notamment je serais heureux d'adresser les propriétés du menuprincipal comme ci dessous
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
void InitializeComponent(void)
{
this->SuspendLayout();
//
// menuprincipal
//
this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);
this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
this->Name = L"main menue";
this->Size = System::Drawing::Size(150, 29);
this->Load += gcnew System::EventHandler(this, &menuprincipal::menuprincipal_Load);
this->ResumeLayout(false);
} |
Je compte sur vous pour m'aider: ce sera :ccool:.
Des recherches fait pendant que vous repondiez
Bonjour, :D
D'abord, je vous remercie de la réponse que vous m'avez faite.
Ensuite, je vous dit que je vais regardez ce que vous avez dit
En attendant je vous parle de la solution que j'ai ébauché et de ce que ça me dit.
Citation:
With the install of the .NET Framework 4 and through using Visual Studio 2010, you will find a few controls available that allow you to build ASP.NET applications with server-side AJAX capabilities. This is the framework to take your applications to the next level because you can accomplish so much with it, including adding specific AJAX capabilities to your user and custom server controls. Every AJAX enhancement added to your application will make your application seem more fluid and responsive to the end user.
You might be wondering where the big AJAX-enabled server controls are for this edition of Visual Studio 2010 if this is indeed a new world for building Web applications. The reason you do not see a new section of AJAX server controls is that Microsoft has treated them as an open source project instead of just blending them into Visual Studio 2010.
Developers at Microsoft and in the community have been working on a series of AJAX-capable server controls that you can use in your ASP.NET applications. These controls are collectively called the ASP.NET AJAX Control Toolkit. Recently, Microsoft has made the ASP.NET AJAX Control Toolkit a part of the Microsoft AJAX Library found at
www.asp.net/ajaxlibrary. Downloading the library, you will find that it now also includes the complete AJAX Control Toolkit. The following figure shows the download page for the AJAX Library.
J'ai regardé ce que on pouvait avoir dans les livres et j'ai mis le paragraphe de tête de ce que j'ai suivi comme conseil.
Mais je me rend compte que ce que le livre a dit et le site de Asp m'as dit
quand je demande à visual de prendre la dll en outil, la ligne Ajax Asp contôle est grisée, et n'est pas active.
vous m'avez demandé ce que c'était que menu principal : je vous livre ci dessous le code de cet objet
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
|
namespace ChargeurdeSpécification {
/// <summary>
/// Description résumée de menuprincipal
/// </summary>
public ref class menuprincipal : public System::Windows::Forms::UserControl
{
public:
menuprincipal(void)
{
InitializeComponent();
//
//TODO: ajoutez ici le code du constructeur
//
}
protected:
/// <summary>
/// Nettoyage des ressources utilisées.
/// </summary>
~menuprincipal()
{
if (components)
{
delete components;
}
}
private:
/// <summary>
/// Variable nécessaire au concepteur.
/// </summary>
System::ComponentModel::Container ^components;
#pragma region Windows Form Designer generated code
/// <summary>
/// Méthode requise pour la prise en charge du concepteur - ne modifiez pas
/// le contenu de cette méthode avec l'éditeur de code.
/// </summary>
void InitializeComponent(void)
{
this->SuspendLayout();
//
// menuprincipal
//
this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);
this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
this->Name = L"main menue";
this->Size = System::Drawing::Size(150, 29);
this->Load += gcnew System::EventHandler(this, &menuprincipal::menuprincipal_Load);
this->ResumeLayout(false);
}
#pragma endregion
private: System::Void menuprincipal_Load(System::Object^ sender, System::EventArgs^ e)
{
}
};
} |
ensuite je vous dit que je n'ai pas trouvé ce que vous avez évoqué dnas la phrase
Citation:
Sélectionnez dans la ToolBox (la faire apparaître si nécessaire) le contrôle "MenuStrip" et "lâchez-le" sur le formulaire dans le Designer.
Je commence a suspecter que l'installation de mon environnement n'est pas bon.en particulier j'ai des message qui me disent que Le framework .Net 4.0 n'est pas installé et je l'ai réinstaller hier.
J'ai donc réinstaller la solution Visual Studio après avoir fait un nettoyage approfondi de mon ordinateur, et j'ai repris mon essai;
Citation:
Sélectionnez dans la ToolBox (la faire apparaître si nécessaire) le contrôle "MenuStrip" et "lâchez-le" sur le formulaire dans le Designer.
Je suis arrivé jusqu'au "MenuStrip", mais je n'ai pas encore trouvé comment le copier pour aller le coller sur la form?... Je passe sur le menu outil puis choisir les éléments de la boite à outil et là j'arrive sur MenuStrip dans le Framework .NET, et je n'arrive à rien.
J'ai réussi a afficher le menu par l'onglet afficher et le choix boite à outil. c'est probablement ce que vous disiez en parlant de faire afficher la boite à outil.
Quand je suis pas à pas le processus structuré comme votre proposition, que je génère avant d'adresser le MenuStrip, la génération est OK
si j'ajoute l'instruction suivante, c'est rejeté.
Code:
1 2
|
Form1.toolStripMenuItem1 = "bonjour"; |
il me reste a trouver comment adresser le StripMenu ainsi crée, d'autant plus que rien n'est disponible comme description du menu.
si on essaie
Code:
1 2
|
Form1::toolStripMenuItem1 = "bonjour"; |
le compilateur répond
Code:
1 2
|
Test3.cpp(17): error C2597: référence non conforme à un membre non static 'Test3::Form1::toolStripMenuItem1' |
En fait il faut une fois le menu dessiné ouvrir le fichier Form1.h avec l'éditeur
Je vous remercie de vos réponses. je trouve cela :ccool: