<?xml version="1.0" encoding="UTF-8" ?>

<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>Posteet: c +  + ,tree</title> 
    <link>http://www.posteet.com/</link> 
    <description>Recent posteets posted to Posteet</description>
    <ttl>60</ttl>

    
    <item>
        <title>MFC convertir Tree en texte</title>
        <link>http://www.posteet.com/view/388</link>
        <description>
        <![CDATA[<pre>// Conversion d'un TreeControl en texte
void Conversion(void) 
{
	CStdioFile File;
	if(File.Open( &quot;C:\\test.txt&quot;, CFile::modeCreate | CFile::modeWrite | CFile::typeText )) // Cree un nouveau fichier, ici : &quot;C:\\test.txt&quot;
	{
		HTREEITEM hti = m_TreeStruct.GetRootItem();
		while( hti )
		{
			int nLevel = GetTreeLevel( hti );
			while( nLevel-- ) File.WriteString( &quot;|\t&quot; );
			if (m_TreeStruct.ItemHasChildren( hti ))
				File.WriteString(&quot;+ &quot; + m_TreeStruct.GetItemText( hti ) + &quot;\r\n&quot;);
			else
				File.WriteString(&quot;  &quot; + m_TreeStruct.GetItemText( hti ) + &quot;\r\n&quot;);
			hti = GetNextItem( hti );
		}
	}

        File.Close(); // Ferme le fichier

	ShellExecute(NULL, &quot;open&quot;, &quot;C:\\essai.txt&quot;, 0, 0, SW_SHOWNORMAL); // On l'ouvre avec l'executable auquel il est associé, sous windows notepad.
	
}



/************************************************************************
									    	           
FONCTION: int GetTreeLevel(HTREEITEM)&amp;HTREEITEM GetNextItem(HTREEITEM)
																        
DEFINITION: Sous fonctions pour la conversion du Tree -&gt; Txt			

************************************************************************/
int CTailleStructureDlg::GetTreeLevel( HTREEITEM hItem )
{
	int iIndent = 0;
	while( (hItem = m_TreeStruct.GetParentItem( hItem )) != NULL )
		iIndent++;
	return iIndent;
}
 
 
HTREEITEM CTailleStructureDlg::GetNextItem( HTREEITEM hItem )
{
	HTREEITEM	hti;
 
	if( m_TreeStruct.ItemHasChildren( hItem ) )
		return m_TreeStruct.GetChildItem( hItem );		
	else
	{		
		while( (hti = m_TreeStruct.GetNextSiblingItem( hItem )) == NULL )
		{
			if( (hItem = m_TreeStruct.GetParentItem( hItem ) ) == NULL )
				return NULL;
		}
	}
	return hti;
}</pre> <a href="http://www.posteet.com/tags/C++">[C++]</a>  <a href="http://www.posteet.com/tags/convertir">[convertir]</a>  <a href="http://www.posteet.com/tags/MFC">[MFC]</a>  <a href="http://www.posteet.com/tags/texte">[texte]</a>  <a href="http://www.posteet.com/tags/tree">[tree]</a>  <a href="http://www.posteet.com/tags/windows">[windows]</a> ]]>        </description>
        <dc:creator>moifort</dc:creator>
        <pubDate>Mon, 12 Nov 2007 13:46:24 +0000</pubDate>

            <category>C++</category>
            <category>convertir</category>
            <category>MFC</category>
            <category>texte</category>
            <category>tree</category>
            <category>windows</category>
    
    </item>

  
    <item>
        <title>MFC manipulation d'un Tree Control</title>
        <link>http://www.posteet.com/view/384</link>
        <description>
        <![CDATA[<pre>/**************** Ajouter des données dans le Tree Control *****************/
//Adding item to the root:

HTREEITEM hParent = m_MFC_Tree.InsertItem(&quot;ItemText&quot;,TVI_ROOT);

//Adding child items to the Parent:
HTREEITEM hParent = m_MFC_Tree.InsertItem(&quot;ItemText&quot;,TVI_ROOT);
HTREEITEM hChild = m_MFC_Tree.InsertItem(&quot;Child ItemText&quot;,hParent,TVI_LAST);

/**************** Récuperer des données dans le Tree Control ***************/

HTREEITEM hItem = m_MFC_Tree.GetSelectedItem();
CString strItemText = m_MFC_Tree.GetItemText(hItem);

/**************** Supprimer des données dans le Tree Control ***************/

HTREEITEM hItem = m_MFC_Tree.GetSelectedItem();
m_MFC_Tree.DeleteItem(hItem);

/************** Exemple de code lors d'un evenement sur le Tree ***********/

void CCoderSourceDlg::OnSelchangedTreectrl(NMHDR* pNMHDR, LRESULT* pResult) 
   {
         NM_TREEVIEW* pNMTreeView = (NM_TREEVIEW*)pNMHDR;

         // TODO: Add your control notification handler code here
         HTREEITEM hItem = m_MFC_Tree.GetSelectedItem();
         CString strItemText = m_MFC_Tree.GetItemText(hItem);

         MessageBox(strItemText);

        *pResult = 0;
   }</pre> <a href="http://www.posteet.com/tags/C++">[C++]</a>  <a href="http://www.posteet.com/tags/MFC">[MFC]</a>  <a href="http://www.posteet.com/tags/tree">[tree]</a>  <a href="http://www.posteet.com/tags/windows">[windows]</a> ]]>        </description>
        <dc:creator>moifort</dc:creator>
        <pubDate>Mon, 12 Nov 2007 13:11:20 +0000</pubDate>

            <category>C++</category>
            <category>MFC</category>
            <category>tree</category>
            <category>windows</category>
    
    </item>


</channel>
</rss>
