begin process at 2012 05 29 07:47:28
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Divers

 > 

Général

 > 

Listview dans un TabControl


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

Listview dans un TabControl

mardi 2 juin 2009 à 15:33:10 | Listview dans un TabControl

Lonicpp

Bonjour,

Je conçoit actuellement un logiciel destiné à une entreprise, dans le but de mon stage. Mais voila, un problème viens d'arriver.

J'ai des données dans un listview, et je veux afficher ce listview dans un seul onglet de mon application. Problème, je ne trouve pas l'évènement qui me permettrait d'afficher le listview uniquement dans cet onglet.

Je travaille sous visual studio c++.

Merci d'avance.
mardi 2 juin 2009 à 16:53:19 | Re : Listview dans un TabControl

Lonicpp

Petit up pour donner des nouvelles.

J'arrive à l'afficher, mais il s'affiche en arrière plan, il n'est pas sur le tabcontrol :/
mercredi 3 juin 2009 à 03:28:04 | Re : Listview dans un TabControl

racpp

Administrateur CodeS-SourceS
Salut,
Le tabcontrol envoie la notification TCN_SELCHANGE via le message WM_NOTIFY à la procédure de la fenêtre ou boite parente quand on change d'onglet en cliquant dessus. On peut récupérer le numéro de l'onglet courant en envoyant le message TCM_GETCURSEL avec SendMessage() au HWND du tabcontrol. Ainsi, on décidera de rendre visible ou non le listview avec ShowWindow() selon l'onglet voulu. Le listview et le tabcontrol ont le même parent. Le corps du tabcontrol doit être suffisamment gand pour contenir le listview.
mercredi 3 juin 2009 à 07:44:59 | Re : Listview dans un TabControl

Lonicpp

Salut racpp,

Merci pour ta réponse, concernant le listview, il est censé passer dans le tabcontrol, vu que je l'ai réduit et que je ne le vois plus dépasser de chaque côté du tabcontrol.

Pour le reste de la réponse, je n'ai pas vraiment saisi comment afficher le listview au dessus du tabcontrol, excusez mon incompréhension, je n'ai pas beaucoup d'expérience dans le c++ :)

Pouvez vous m'éclaircir ?

Merci,

Lonicpp.
mercredi 3 juin 2009 à 14:08:25 | Re : Listview dans un TabControl

racpp

Administrateur CodeS-SourceS
Que veux-tu dire exactement par "au dessus"?. Normalement, il n'y a rien de spécial à faire. Le listview est au même niveau que le tabcontrol. Si le listview est situé à l'intérieur du cadre du corps du tabcontrol, on a l'impression qu'il est au dessus.
mercredi 3 juin 2009 à 14:37:37 | Re : Listview dans un TabControl

Lonicpp

En fait j'ai pas fait un listview avec la boite à outlis, je l'ai créé directement à la main..
Donc je me retrouve avec la fonction "createMyListView()", que je ne sais pas où mettre.

La fonction est la suivante :

private:
   void CreateMyListView()
   {
           String^ variable_temporaire2;
        //Lecture du fichier texte
        String^ path = "c:\\pxrv.txt";
        FileStream^ fs = File::OpenRead( path );
        array<Byte>^b2 = gcnew array<Byte>(1000000);
        UTF8Encoding^ temp = gcnew UTF8Encoding( true );
        while ( fs->Read( b2, 0, b2->Length ) > 0 )
        {
            //On balance le contenu du fichier dans la variable "variable_temporaire"
            variable_temporaire2 = System::Convert::ToString( temp->GetString( b2 ) );
        }
       
        //Fin Lecture du fichier texte
        //On split la variable_temporaire
        array<Char>^chars2 = {';'};    // Tableau des séparateurs, ici uniquement ';'
        array<String^>^split2 = variable_temporaire2->Split( chars2 ); // words contenant votre chaine de caractères et chars les séparateurs
     
        // Création de la listview
        ListView^ listView1 = gcnew ListView;
        listView1->Bounds = Rectangle(Point(20,20),System::Drawing::Size( 1000, 500 ));

        // Permettre l'affichage des valeurs.
        listView1->View = View::Details;

        // Permettre a l'utilisateur de modifier les valeurs.
        listView1->LabelEdit = true;

        // Permettre a l'utilisateur de modifier la taille des colones.
        listView1->AllowColumnReorder = true;

        // Affichage des checkbox.
        listView1->CheckBoxes = false;

        // Sélectionner les éléments et les sous éléments quand on a fait la séléction.
        listView1->FullRowSelect = true;

        // Affichage des lignes.
        listView1->GridLines = true;

        // Ordre de tri des éléments.
        listView1->Sorting = SortOrder::Ascending;
        int nombreaff = System::Convert::ToInt16(split2[0])*48;
       
        // Create columns for the items and subitems.
        listView1->Columns->Add( "Identifiant", -2, HorizontalAlignment::Left );
        listView1->Columns->Add( "Nom de l'entreprise", -2, HorizontalAlignment::Left );
        listView1->Columns->Add( "Date de l'affaire", -2, HorizontalAlignment::Left );
        listView1->Columns->Add( "Chiffre d'affaire", -2, HorizontalAlignment::Right );
        listView1->Columns->Add( "Coût main d'oeuvre", -2, HorizontalAlignment::Right );
        listView1->Columns->Add( "Coût montage", -2, HorizontalAlignment::Right );
        listView1->Columns->Add( "Coût matières", -2, HorizontalAlignment::Right );
        listView1->Columns->Add( "Total déboursé", -2, HorizontalAlignment::Right );
        listView1->Columns->Add( "Charges indirectes", -2, HorizontalAlignment::Right );
        listView1->Columns->Add( "Charges", -2, HorizontalAlignment::Right );
        listView1->Columns->Add( "Marge", -2, HorizontalAlignment::Right );
        listView1->Columns->Add( "Taux marge", -2, HorizontalAlignment::Right );

        for (int i=1; i<nombreaff; i++)
        {
            if (split2[i] == "Laurent D.")
            {
                // Create three items and three sets of subitems for each item.
                ListViewItem^ item1 = gcnew ListViewItem( split2[i],0 );

                // Place a check mark next to the item.
                item1->Checked = true;
                item1->SubItems->Add( split2[i+3] );
                item1->SubItems->Add( split2[i-3] );
                item1->SubItems->Add( "3" );

                //Add the items to the ListView.
                //String^ taille_tbl = "{item1,item2,item3}";
                array<ListViewItem^>^temp1 = {item1};
                listView1->Items->AddRange( temp1 );

                // Add the ListView to the control collection.
                this->Controls->Add( listView1 );
            }
        }
   }

(désolé je n'ai pas trouvé la balise code)

Je cherche l'emplacement où doit se trouver mon appel de fonction, pour que le listview soit dessiné sur mon onglet.
Dans les évènements j'avais trouvé click, mais quand je clic sur l'onglet ça m'affiche bien mon listview, mais derrière... :D

Merci.
mercredi 3 juin 2009 à 15:01:34 | Re : Listview dans un TabControl

racpp

Administrateur CodeS-SourceS
Désolé, je pensais que tu travaillais en Win32 API. Une capture d'écran de ton application serait préférable pour nous permettre de voir la nature du problème.
mercredi 3 juin 2009 à 15:08:52 | Re : Listview dans un TabControl

Lonicpp

Re,

http://www.hiboox.fr/go/images/informatique/listview,25ff5c10641658701644da15375ae5e0.png.html

Comme tu peux le voir, mon listview est derrière :/

Désolé j'avais oublié de préciser que j'étais en winform
mercredi 3 juin 2009 à 15:09:32 | Re : Listview dans un TabControl
jeudi 4 juin 2009 à 07:44:12 | Re : Listview dans un TabControl

Lonicpp

up plz :/

1 2

Cette discussion est classée dans : problème, afficher, listview, onglet, tabcontrol


Répondre à ce message

Sujets en rapport avec ce message

Problème avec un Bitmap [ par nauss ] Je veux afficher un bitmap en niveau de gris sous visual C++ en MFC.Pour l'instant j'arrive à l'afficher mais en niveau de rouge!!Y doit y avoir une h SrollBar dans un Onglet (TabControl) [ par aujeanfr ] Bonjour, j'ai ajouté une ScrollBar dans un Onglet avec le message WM_VSCROLL mais je me trouve davant un pb.NB : je travaille avec les MFCLa fenêtre f CRecordset et Combo Box [ par DraaFil ] Bonjour à tous,Voici mon problème:J'ai une bd access qui est loader dans mon view. j'ai une autre fenetre qui à un combobox. Voici le problème, je veu Problème de transparence des étiquettes avec les onglets en MFC [ par akboy ] Actuellement, je suis en train de faire une application MFC mettant en oeuvre des onglets (CTabCtrl). Jusque là, j'ai réussi à créer des onglets en le Problème de Transparence Opengl [ par yayayvon ] Bonjour,J'arrive à afficher des objets texturés transparents (utilisation du blending et gldepthMask), mais seulement en les affichant après tous les afficher un float [ par vecchio56 ] Bonjour a tous J'essaie de faire une fonction pour mettre un float dans un char*. Le problème, c'est que quand je veux afficher 17.15 par exemple, ca listview finditem [ par cgmorpheus ] Bonjours tout le monde,Pour commencer je tien a dire que je suis débutant en API,alors excuser moi si je n'emploie pas les terme exact dans mon explic ListView qui ne s'affiche pas [ par minet03 ] Coucou, alors le problème est simple. Je créer un ListView avec 2 colonnes donc voici le code : http://www.nomorepasting.com/paste.php?pasteID=44284 L Sélection d'une ligne d'un ListView [ par flyingfish ] Bonjour,Dans un contrôle Microsoft ListView Control, version 6.0, si je clique sur une ligne, aucun problème, elle se sélectionne.Si ensuite je veux d Afficher une image dans un contrôle [ par tigerskin ] Salut !J'ai un problème : je dois afficher dans ma boite de dialogue une image JPEG. J'utilise pour cela une fonction trouvée sur CPPFrance (LoadAnIma


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



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

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