rmchart auf TabItem projezieren

  • Hi,

    Wie der Titel ja schon sagt, würde ich gern ein Diagramm auf nur dem einen Tab anzeigen lassen.
    Ich kriege es aber nur so hin, das sich das Diagramm über alle Tabs legt, weil es in das gesamte GUI gezeichnet wird.
    Weiß jemand wie sich das bewerkstelligen lässt? ?(

    Gruß, eF.

    Einmal editiert, zuletzt von eF_Hacks (26. Mai 2009 um 15:48)

  • Hallo eF_Hacks,

    wenn du dein Skriptstand postest findest du leichter Hilfe, oder sollen wir raten wo der Fehler liegt. Meine Glaskugel sagt mir zwar, dass der Fehler in der Erstellung der Tabs liegt, bzw. du rmchart an der falschen (nämlich für die ganze Gui) erzeugst,

    mfg (Auto)Bert

  • Hier isses :)

    [autoit]


    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <ListBoxConstants.au3>
    #include <StaticConstants.au3>
    #include <TabConstants.au3>
    #include <WindowsConstants.au3>
    #include "rmchart.au3"

    [/autoit][autoit][/autoit][autoit]

    #Region ### START Koda GUI section ### Form=
    $hGUI = GUICreate("Update Hilfe", 625, 445, -1, -1)
    GUISetBkColor(0xFFFFFF)
    $GUI = GUICtrlCreateTab(8, 8, 609, 393)
    GUICtrlSetResizing(-1, $GUI_DOCKWIDTH + $GUI_DOCKHEIGHT)
    $Sheet_Hilfe = GUICtrlCreateTabItem("Hilfe")
    $List1 = GUICtrlCreateList("", 16, 40, 161, 97)
    GUICtrlSetFont(-1, 8, 800, 4, "MS Sans Serif")
    GUICtrlSetColor(-1, 0x0000FF)
    GUICtrlSetCursor(-1, 0)
    $Edit1 = GUICtrlCreateEdit("", 14, 149, 585, 241)
    $Sheet_Statistik = GUICtrlCreateTabItem("Statistik")
    GUICtrlCreateTabItem("")
    $Checkbox_Listabfrage = GUICtrlCreateCheckbox("Checkliste bei Start anzeigen?", 8, 416, 177, 17)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

    [/autoit][autoit][/autoit][autoit]

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

    [/autoit][autoit][/autoit][autoit]

    EndSwitch
    WEnd

    [/autoit][autoit][/autoit][autoit]

    Func Diagramm()
    _RMC_LoadDLL(@ScriptDir & "/rmchart.dll")
    $ChartID = 2101
    _RMC_CreateChart($hGUI, $ChartID, 15, 33, 590, 360, 0, 0, 0, "", "", 100)

    [/autoit][autoit][/autoit][autoit]

    _RMC_AddRegion($ChartID, 5, 5, -5, -5)

    [/autoit][autoit][/autoit][autoit]

    _RMC_AddCaption($ChartID, 1, "Statistik")
    _RMC_AddGrid($ChartID, 1)
    _RMC_AddDataAxis($ChartID, 1, $RMC_DATAAXISLEFT, 0, 100, 11, 8, 0, 0, $RMC_LINESTYLEDOT, 0, "", "")
    _RMC_AddLabelAxis($ChartID, 1, "bla*/bla*/bla", 1, 3, 0, 0, 0, 0, 0, $RMC_LINESTYLENONE, "")

    [/autoit][autoit][/autoit][autoit]

    Local $Values[3] = [3, 2, 1]
    $Struct = _RMC_A2SDouble($Values)
    _RMC_AddBarSeries($ChartID, 1, $Struct, 3, $RMC_BARSINGLE, $RMC_COLUMN_3D_GRADIENT, True, 0x000033)

    [/autoit][autoit][/autoit][autoit]

    _RMC_SetCustomToolTipText($ChartID, 1, 1, 3, "123")
    _RMC_SetCtrlStyle($ChartID, $RMC_CTRLSTYLE3DLIGHT)

    [/autoit][autoit][/autoit][autoit]

    _RMC_Zoom($ChartID, $RMC_ZOOM_INTERNAL)
    _RMC_Draw($ChartID)

    [/autoit]
  • Das geht mit ControlHide / ControlShow ;) Ich hab auch gleich noch ein paar Parameter in deine Funktion eingebaut.

    Spoiler anzeigen
    [autoit]

    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <ListBoxConstants.au3>
    #include <StaticConstants.au3>
    #include <TabConstants.au3>
    #include <WindowsConstants.au3>
    #include "rmchart.au3"

    [/autoit] [autoit][/autoit] [autoit]

    #Region ### START Koda GUI section ### Form=
    $hGUI = GUICreate("Update Hilfe", 625, 445, -1, -1)
    GUISetBkColor(0xFFFFFF)
    $Tab = GUICtrlCreateTab(8, 8, 609, 393)
    GUICtrlSetResizing(-1, $GUI_DOCKWIDTH + $GUI_DOCKHEIGHT)
    $Sheet_Hilfe = GUICtrlCreateTabItem("Hilfe")
    $List1 = GUICtrlCreateList("", 16, 40, 161, 97)
    GUICtrlSetFont(-1, 8, 800, 4, "MS Sans Serif")
    GUICtrlSetColor(-1, 0x0000FF)
    GUICtrlSetCursor(-1, 0)
    $Edit1 = GUICtrlCreateEdit("", 14, 149, 585, 241)
    $Sheet_Statistik = GUICtrlCreateTabItem("Statistik")
    GUICtrlCreateTabItem("")
    $Checkbox_Listabfrage = GUICtrlCreateCheckbox("Checkliste bei Start anzeigen?", 8, 416, 177, 17)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

    [/autoit] [autoit][/autoit] [autoit]

    $ChartID = 2101
    Diagramm($hGUI, $ChartID, True)

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Tab
    Switch GUICtrlRead($Tab,1)
    Case $Sheet_Statistik
    ControlShow($hGUI,"",$ChartID)
    Case Else
    ControlHide($hGUI,"",$ChartID)
    EndSwitch
    EndSwitch
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func Diagramm($hGUI, $ChartID, $Versteckt=False)
    _RMC_LoadDLL("rmchart.dll")
    _RMC_CreateChart($hGUI, $ChartID, 15, 33, 590, 360, 0, 0, 0, "", "", 100)

    [/autoit] [autoit][/autoit] [autoit]

    _RMC_AddRegion($ChartID, 5, 5, -5, -5)

    [/autoit] [autoit][/autoit] [autoit]

    _RMC_AddCaption($ChartID, 1, "Statistik")
    _RMC_AddGrid($ChartID, 1)
    _RMC_AddDataAxis($ChartID, 1, $RMC_DATAAXISLEFT, 0, 100, 11, 8, 0, 0, $RMC_LINESTYLEDOT, 0, "", "")
    _RMC_AddLabelAxis($ChartID, 1, "bla*/bla*/bla", 1, 3, 0, 0, 0, 0, 0, $RMC_LINESTYLENONE, "")

    [/autoit] [autoit][/autoit] [autoit]

    Local $Values[3] = [3, 2, 1]
    $Struct = _RMC_A2SDouble($Values)
    _RMC_AddBarSeries($ChartID, 1, $Struct, 3, $RMC_BARSINGLE, $RMC_COLUMN_3D_GRADIENT, True, 0x000033)

    [/autoit] [autoit][/autoit] [autoit]

    _RMC_SetCustomToolTipText($ChartID, 1, 1, 3, "123")
    _RMC_SetCtrlStyle($ChartID, $RMC_CTRLSTYLE3DLIGHT)

    [/autoit] [autoit][/autoit] [autoit]

    _RMC_Zoom($ChartID, $RMC_ZOOM_INTERNAL)
    _RMC_Draw($ChartID)
    If $Versteckt Then ControlHide($hGUI,"",$ChartID)
    EndFunc

    [/autoit]