Je cherche une solution de contournement pour ma TreeView ne soit pas cachée par la fonction...
Code : Tout sélectionner
Func _GUICtrlTab_SetBkColor($hWnd, $hSysTab32, $sBkColor)
Si une âme charitable passait par là je serai ravi d'apprendre de mes érreurs.
Code : Tout sélectionner
#include <Array.au3> #include <ColorConstants.au3> #Include <EditConstants.au3> #include <File.au3> #include <FontConstants.au3> #include <GuiComboBox.au3> #include <GUIConstantsEx.au3> #include <GuiEdit.au3> #include <GuiRichEdit.au3> #include <GDIPlus.au3> #include <GuiTab.au3> #include <GUIConstants.au3> #include <GUIConstantsEx.au3> #include <GuiTreeView.au3> #include <WinAPI.au3> __________0_Creation_De_La_GUI() __________1_Creation_Des_Tabs_Et_Redimensionnement_Automatique() __________2_Creation_Des_Fonction_Du_Tab_Configuration_Et_Redimensionnement_Automatique() __________4_Creation_Des_Fonction_Des_Tabs_Devis_Acompte_Facture_Et_Redimensionnement_Automatique() Func __________0_Creation_De_La_GUI() If IsDeclared( "Debug") And $Debug Then ConsoleWrite( "Line = "&@ScriptLineNumber &", "& "Func " &@CRLF) Global $Title = "Bdd Gestion clientelle v1.0" Global $X = -1, $Y = -1, $W = 210, $H = 297, $Zoom = StringFormat("%.2f", 2.5) ; Dimentions de la GUI ;~ Global Const $hGui = GUICreate( $Title, $W*$Zoom+24, $H*$Zoom+74, $X, $Y, $WS_MINIMIZEBOX+$WS_SYSMENU+$WS_CAPTION, $WS_EX_ACCEPTFILES) ;$WS_OVERLAPPEDWINDOW, $WS_EX_ACCEPTFILES) Global Const $hGui = GUICreate( $Title, $W*$Zoom+24, $H*$Zoom+74, $X, $Y, $WS_OVERLAPPEDWINDOW, $WS_EX_ACCEPTFILES) GUISetFont( 10) GUISetStyle(BitOR($WS_MINIMIZEBOX, $WS_CAPTION, $WS_POPUPWINDOW, $WS_THICKFRAME), 0) ;~ GUISetStyle(BitOR($WS_MINIMIZEBOX, $WS_CAPTION, $WS_POPUPWINDOW, $WS_THICKFRAME), BitOR($WS_EX_CLIENTEDGE, "")) EndFunc Func __________1_Creation_Des_Tabs_Et_Redimensionnement_Automatique() If IsDeclared( "Debug") And $Debug Then ConsoleWrite( "Line = "&@ScriptLineNumber &", "& "Func " &@CRLF) Local $X_Tab = 5, $Y_Tab = 5, $W_Tab = $W*$Zoom, $H_Tab = $H*$Zoom Global Const $id_Tab = GUICtrlCreateTab( $X_Tab, $Y_Tab, $W_Tab+16, $H_Tab+65), $h_Tab = GUICtrlGetHandle( $id_Tab) GUICtrlSetResizing( $id_Tab, $GUI_DOCKLEFT + $GUI_DOCKRIGHT + $GUI_DOCKTOP + $GUI_DOCKBOTTOM) GUICtrlSetFont( $id_Tab, 12) ; === Onglet n°1 à 4 === Global Const $id_Tab_Sheet_0 = GUICtrlCreateTabItem("⚙ Configuration") Global Const $id_Tab_Sheet_1 = GUICtrlCreateTabItem("❔ Devis") Global Const $id_Tab_Sheet_2 = GUICtrlCreateTabItem("🕗 Acompte") Global Const $id_Tab_Sheet_3 = GUICtrlCreateTabItem("✔️ Facture") GUICtrlCreateTabItem("") ; === Couleur Onglet n°0 === $vRet = _Set_Tab_id( $id_Tab_Sheet_0, 1) ; Selctionne Tab 0 _GUICtrlTab_SetBkColor( $hGui, $id_Tab , 0xCCCCFF) Global $id_Tab_Sheet_Color_0 = _WinAPI_GetDlgCtrlID(GUICtrlGetHandle(-1)) ; Func _GetLastCtrlID() GUICtrlSetResizing( -1, $GUI_DOCKLEFT + $GUI_DOCKRIGHT + $GUI_DOCKTOP + $GUI_DOCKBOTTOM) $vRet = _Set_Tab_id( $id_Tab_Sheet_0) ; === Couleur Onglet n°1 === $vRet = _Set_Tab_id( $id_Tab_Sheet_1, 1) ; Selctionne Tab 1 _GUICtrlTab_SetBkColor( $hGui, $id_Tab , 0xCCCCFF) Global $id_Tab_Sheet_Color_1 = _WinAPI_GetDlgCtrlID(GUICtrlGetHandle(-1)) ; Func _GetLastCtrlID() GUICtrlSetResizing( -1, $GUI_DOCKLEFT + $GUI_DOCKRIGHT + $GUI_DOCKTOP + $GUI_DOCKBOTTOM) $vRet = _Set_Tab_id( $id_Tab_Sheet_1) ; === Couleur Onglet n°2 === $vRet = _Set_Tab_id( $id_Tab_Sheet_2, 1) ; Selctionne Tab 2 _GUICtrlTab_SetBkColor( $hGui, $id_Tab , 0xCCCCFF) Global $id_Tab_Sheet_Color_2 = _WinAPI_GetDlgCtrlID(GUICtrlGetHandle(-1)) ; Func _GetLastCtrlID() GUICtrlSetResizing( -1, $GUI_DOCKLEFT + $GUI_DOCKRIGHT + $GUI_DOCKTOP + $GUI_DOCKBOTTOM) $vRet = _Set_Tab_id( $id_Tab_Sheet_2) ; === Couleur Onglet n°3 === $vRet = _Set_Tab_id( $id_Tab_Sheet_3, 1) ; Selctionne Tab 3 _GUICtrlTab_SetBkColor( $hGui, $id_Tab , 0xCCCCFF) Global $id_Tab_Sheet_Color_3 = _WinAPI_GetDlgCtrlID(GUICtrlGetHandle(-1)) ; Func _GetLastCtrlID() GUICtrlSetResizing( -1, $GUI_DOCKLEFT + $GUI_DOCKRIGHT + $GUI_DOCKTOP + $GUI_DOCKBOTTOM) $vRet = _Set_Tab_id( $id_Tab_Sheet_3) EndFunc Func __________2_Creation_Des_Fonction_Du_Tab_Configuration_Et_Redimensionnement_Automatique() $vRet = _Set_Tab_id( $id_Tab_Sheet_0, 1) ; === Tab n°0 === ⚙ Configuration ;~ $vRet = _Set_Tab_id( $id_Tab_Sheet_1, 1) ; === Tab n°1 === ❔ Devis ;~ $vRet = _Set_Tab_id( $id_Tab_Sheet_2, 1) ; === Tab n°2 === 🕗 Acompte ;~ $vRet = _Set_Tab_id( $id_Tab_Sheet_3, 1) ; === Tab n°2 === ✔️ Facture Local $aPos = ControlGetPos ( $hGui , "" , $id_Tab) ;~ _ArrayDisplay( $aPos, "$aPos") Global $id_Nom_Entreprise = GUICtrlCreateInput( "Nom de votre société ici", $aPos[0]+5, $aPos[1]+35, $aPos[2]-12-10, 20) Global $Nom_Entreprise = GUICtrlRead( $id_Nom_Entreprise) GUICtrlSetTip( -1, "Modifiez ici le nom" &@CRLF& "de votre société") GUICtrlSetResizing( -1, BitOr( $GUI_DOCKLEFT, $GUI_DOCKRIGHT, $GUI_DOCKTOP, $GUI_DOCKSIZE)) Global $Folder = ".\BDD" & "\" Global $Folder_Configuration_GUI = $Folder & "Configuration_Du_Logiciel.txt" Global $Folder_Entreprise = $Nom_Entreprise & "\" ;~ Global $Folder_Entreprise_Configuration_TXT = $Folder_Configuration & "Configuration.txt" Global $Tree_0 = _GUICtrlTab_GetItemText( $id_Tab, 0) & "\" ; ⚙ Configuration Global $Tree_1 = _GUICtrlTab_GetItemText( $id_Tab, 1) & "\" ; ❔ Devis Global $Tree_2 = _GUICtrlTab_GetItemText( $id_Tab, 2) & "\" ; 🕗 Acompte Global $Tree_3 = _GUICtrlTab_GetItemText( $id_Tab, 3) & "\" ; ✔️ Facture #Region TREEVIEW ONE Local $aPos = ControlGetPos ( $hGui , "" , $Nom_Entreprise) Global $idTreeView_Folder = GUICtrlCreateTreeView( $aPos[0], $aPos[1]+35, $aPos[2]-12, 140) Global $hTreeView_Folder = ControlGetHandle( $hGui, "", $idTreeView_Folder) GUICtrlSetFont( -1, 10) GUICtrlSetTip( -1, '#Region TREEVIEW ONE') Global $idRoot = GUICtrlCreateTreeViewItem( $Folder , $idTreeView_Folder) ; ".\BDD" & "\" Global $idRoot_Tree_Entreprise = GUICtrlCreateTreeViewItem( $Folder_Entreprise , $idRoot) ; $Nom_Entreprise & "\" Global $idRoot_Tree_Dossier_Clients_Configuration = GUICtrlCreateTreeViewItem( $Tree_0 , $idRoot_Tree_Entreprise) ; ⚙ Configuration Global $idRoot_Tree_Dossier_Clients_Devis = GUICtrlCreateTreeViewItem( $Tree_1 , $idRoot_Tree_Entreprise) ; ❔ Devis Global $idRoot_Tree_Dossier_Clients_Acompte = GUICtrlCreateTreeViewItem( $Tree_2 , $idRoot_Tree_Entreprise) ; 🕗 Acompte Global $idRoot_Tree_Dossier_Clients_Factures = GUICtrlCreateTreeViewItem( $Tree_3 , $idRoot_Tree_Entreprise) ; ✔️ Facture Global $idRoot_Tree_Configuration_GUI = GUICtrlCreateTreeViewItem( $Folder_Configuration_GUI , $idTreeView_Folder) ; $Folder & "Configuration_Du_Logiciel.txt" Local $aPos = ControlGetPos ( $hGui , "" , $idTreeView_Folder) Global $id_Folder = GUICtrlCreateInput( "", $aPos[0], $aPos[1]+135, $aPos[2]-12-10, 20) Global $Folder_Entreprise_s = $Folder & ControlTreeView( $hGui, "", $hTreeView_Folder, "GetText", "#0|#0") ; Global $Folder_Entreprise_Dossiers_Clients_Configuration = $Folder & $Folder_Entreprise & ControlTreeView( $hGui, "", $hTreeView_Folder, "GetText", "#0|#0|#0") ; ⚙ Configuration Global $Folder_Entreprise_Dossiers_Clients_Devis = $Folder & $Folder_Entreprise & ControlTreeView( $hGui, "", $hTreeView_Folder, "GetText", "#0|#0|#1") ; ❔ Devis Global $Folder_Entreprise_Dossiers_Clients_Acompte = $Folder & $Folder_Entreprise & ControlTreeView( $hGui, "", $hTreeView_Folder, "GetText", "#0|#0|#2") ; 🕗 Acompte Global $Folder_Entreprise_Dossiers_Clients_Factures = $Folder & $Folder_Entreprise & ControlTreeView( $hGui, "", $hTreeView_Folder, "GetText", "#0|#0|#3") ; ✔️ Facture _GUICtrlTreeView_Expand( $idTreeView_Folder) #EndRegion TREEVIEW ONE __________3_Mise_A_Jour_De_La_TreeView_Configuration_De_L_Interface() EndFunc Func __________3_Mise_A_Jour_De_La_TreeView_Configuration_De_L_Interface() $Var1 = ControlTreeView( $hGui, "", $hTreeView_Folder, "GetText", "#0|#0") $Var2 = GUICtrlRead( $id_Nom_Entreprise) & "\" If $Var1 <> $Var2 Then GUICtrlSetData( $idRoot_Tree_Entreprise, GUICtrlRead( $id_Nom_Entreprise) & "\") Global $Folder_Entreprise = ControlTreeView( $hGui, "", $hTreeView_Folder, "GetText", "#0|#0") ; $Nom_Entreprise & "\" Global $Folder_Entreprise_s = $Folder & ControlTreeView( $hGui, "", $hTreeView_Folder, "GetText", "#0|#0") ; Global $Folder_Entreprise_Dossiers_Clients_Configuration = $Folder & $Folder_Entreprise & ControlTreeView( $hGui, "", $hTreeView_Folder, "GetText", "#0|#0|#0") ; ⚙ Configuration Global $Folder_Entreprise_Dossiers_Clients_Devis = $Folder & $Folder_Entreprise & ControlTreeView( $hGui, "", $hTreeView_Folder, "GetText", "#0|#0|#1") ; ❔ Devis Global $Folder_Entreprise_Dossiers_Clients_Acompte = $Folder & $Folder_Entreprise & ControlTreeView( $hGui, "", $hTreeView_Folder, "GetText", "#0|#0|#2") ; 🕗 Acompte Global $Folder_Entreprise_Dossiers_Clients_Factures = $Folder & $Folder_Entreprise & ControlTreeView( $hGui, "", $hTreeView_Folder, "GetText", "#0|#0|#3") ; ✔️ Facture EndIf EndFunc Func __________4_Creation_Des_Fonction_Des_Tabs_Devis_Acompte_Facture_Et_Redimensionnement_Automatique() If IsDeclared( "Debug") And $Debug Then ConsoleWrite( "Line = "&@ScriptLineNumber &", "& "Func " &@CRLF) ; === Onglet n°1 === $vRet = _Set_Tab_id( $id_Tab_Sheet_1, 1) ; === Tab n°1 === ❔ Devis Global $id_ComboBox_Tab_1 = GUICtrlCreateCombo("", 38, 36, $W*$Zoom-22*3 - 40, 20, $CBS_DROPDOWNLIST) GUICtrlSetTip( -1, "Liste déroulante des " & _GUICtrlTab_GetItemText( $id_Tab, 1) & " classée par" &@CRLF& "numéros, date, Noms et Prénoms") GUICtrlSetResizing( -1, BitOr( $GUI_DOCKLEFT, $GUI_DOCKRIGHT, $GUI_DOCKTOP)) ; === Onglet n°2 === $vRet = _Set_Tab_id( $id_Tab_Sheet_2, 1) ; === Tab n°2 === 🕗 Acompte Global $id_ComboBox_Tab_2 = GUICtrlCreateCombo("", 38, 36, $W*$Zoom-22*3 - 40, 20, $CBS_DROPDOWNLIST) GUICtrlSetTip( -1, "Liste déroulante des " & _GUICtrlTab_GetItemText( $id_Tab, 2) & " classée par" &@CRLF& "numéros, date, Noms et Prénoms") GUICtrlSetResizing( -1, BitOr( $GUI_DOCKLEFT, $GUI_DOCKRIGHT, $GUI_DOCKTOP)) ; === Onglet n°3 === $vRet = _Set_Tab_id( $id_Tab_Sheet_3, 1) ; === Tab n°2 === ✔️ Facture Global $id_ComboBox_Tab_3 = GUICtrlCreateCombo("", 38, 36, $W*$Zoom-22*3 - 40, 20, $CBS_DROPDOWNLIST) GUICtrlSetTip( -1, "Liste déroulante des " & _GUICtrlTab_GetItemText( $id_Tab, 3) & " classée par" &@CRLF& "numéros, date, Noms et Prénoms") GUICtrlSetResizing( -1, BitOr( $GUI_DOCKLEFT, $GUI_DOCKRIGHT, $GUI_DOCKTOP)) EndFunc GUISetState(@SW_SHOW) _Set_Tab_id( $id_Tab_Sheet_0) While True $msg = GUIGetMsg() Switch $msg Case GUICtrlRead( $id_Nom_Entreprise) __________3_Mise_A_Jour_De_La_TreeView_Configuration_De_L_Interface() Case $idRoot ControlSetText( $hGui, "", $id_Folder, $Folder) Case $idRoot_Tree_Entreprise ControlSetText( $hGui, "", $id_Folder, $Folder_Entreprise_s) Case $idRoot_Tree_Dossier_Clients_Configuration ControlSetText( $hGui, "", $id_Folder, $Folder_Entreprise_Dossiers_Clients_Configuration) Case $idRoot_Tree_Dossier_Clients_Devis ControlSetText( $hGui, "", $id_Folder, $Folder_Entreprise_Dossiers_Clients_Devis) Case $idRoot_Tree_Dossier_Clients_Acompte ControlSetText( $hGui, "", $id_Folder, $Folder_Entreprise_Dossiers_Clients_Acompte) Case $idRoot_Tree_Dossier_Clients_Factures ControlSetText( $hGui, "", $id_Folder, $Folder_Entreprise_Dossiers_Clients_Factures) Case $idRoot_Tree_Configuration_GUI ControlSetText( $hGui, "", $id_Folder, $Folder_Configuration_GUI) Case $GUI_EVENT_CLOSE _Exit() EndSwitch WEnd Func _Set_Tab_id( $_idTabSheet = "", $_MemTab = "") If IsDeclared( "Debug") And $Debug Then ConsoleWrite( "Line = "&@ScriptLineNumber &", "& "Func _Set_Tab_id()" &@CRLF) If Not IsDeclared( "_MemTab") Then Global $_MemTab If $_MemTab = "" Then ; NULL = "" GUISwitch($hGui, $_idTabSheet) GUICtrlCreateTabItem("") ElseIf $_MemTab <> "" Then ; Not NULL <> "" GUISwitch($hGui, $_idTabSheet) $_MemTab = "Open" ElseIf $_MemTab = "Open" Then ; Fermeture GUICtrlCreateTabItem("") $_MemTab = "" EndIf Return _GUICtrlTab_GetCurSel( $id_Tab) &","& _GUICtrlTab_GetItemText( $id_Tab, _GUICtrlTab_GetCurSel( $id_Tab)) EndFunc Func _GUICtrlTab_SetBkColor($hWnd, $hSysTab32, $sBkColor) If IsDeclared( "Debug") And $Debug Then ConsoleWrite( "Line = "&@ScriptLineNumber &", "& "Func _GUICtrlTab_SetBkColor()" &@CRLF) Local $aTabPos = ControlGetPos($hWnd, "", $hSysTab32) Local $aTab_Rect = _GUICtrlTab_GetItemRect($hSysTab32, -1) GUICtrlCreateLabel("", $aTabPos[0]+2, $aTabPos[1]+$aTab_Rect[3]+4, $aTabPos[2]-6, $aTabPos[3]-$aTab_Rect[3]-7) GUICtrlSetBkColor( -1, $sBkColor) GUICtrlSetState( -1, $GUI_DISABLE) EndFunc Func _Exit() If IsDeclared( "Debug") And $Debug Then ConsoleWrite( "Line = "&@ScriptLineNumber &", "& "Func _Exit()" &@CRLF) ;~ _Fonction_1_Enregistrement_Du_Fichier_De_Configuration() _GDIPlus_Shutdown() ConsoleWrite( "Line = "&@ScriptLineNumber &", "& "Func _Exit()" &@CRLF) GUIDelete( $hGUI) Exit EndFunc