Deutsch
Forum

CreateChoiceBox - Einmal geht sie, ein anderes mal nicht

 

Christian
Eichler
Ich hab jetzt letztens ein kleines Problem mit der CreateChoiceBox bekommen :

In diesem (kleinen) Beispiel funktionniert sie:
KompilierenMarkierenSeparieren
In diesem anderen (nicht so ganz kurzen) Beispiel werden allerdings keine Einträge angezeigt : (eigentlich ist nur der 1. Teil interessant ^^)
KompilierenMarkierenSeparieren
proc Hinzufugen

    SetAutoPaint 1
    Let GT$[1]=1
    Declare Hinzufugen%, HinzufugenA%, HinzufugenB%, Graph1%, Choice%, Summanden%, GL%, FarbButton%, TypButton1%, AndernButton1%, TypButton2%, AndernButton2%
    Declare Graph1%, Graph2%, GenauigkeitsAuswahl&, StartAuswahl$
    Declare GraphLadenN1%, GraphLadenN2%, GraphLadenN3%, GraphLadenN4%, GraphLadenN5%, GraphLadenN6%, GraphLadenN7%, GraphLadenN8%, GraphLadenN9%
    Declare Belegt1$, Belegt2$, Belegt3$, Belegt4$, Belegt5$, Belegt6$, Belegt7$, Belegt8$, Belegt9$, Name$, LadenDatei%, LadenIntern%
    Let Belegt1$=(+S$[35]+)
    Let Belegt2$=(+S$[35]+)
    Let Belegt3$=(+S$[35]+)
    Let Belegt4$=(+S$[35]+)
    Let Belegt5$=(+S$[35]+)
    Let Belegt6$=(+S$[35]+)
    Let Belegt7$=(+S$[35]+)
    Let Belegt8$=(+S$[35]+)
    Let Belegt9$=(+S$[35]+)
    CaseNot ReadIni$(Settings$,GrX,G1)=0.000000:Let Belegt1$=(+S$[36]+ : +ReadIni$(Settings$,GrX,G1N)+ )
    CaseNot ReadIni$(Settings$,GrX,G2)=0.000000:Let Belegt2$=(+S$[36]+ : +ReadIni$(Settings$,GrX,G2N)+ )
    CaseNot ReadIni$(Settings$,GrX,G3)=0.000000:Let Belegt3$=(+S$[36]+ : +ReadIni$(Settings$,GrX,G3N)+ )
    CaseNot ReadIni$(Settings$,GrX,G4)=0.000000:Let Belegt4$=(+S$[36]+ : +ReadIni$(Settings$,GrX,G4N)+ )
    CaseNot ReadIni$(Settings$,GrX,G5)=0.000000:Let Belegt5$=(+S$[36]+ : +ReadIni$(Settings$,GrX,G5N)+ )
    CaseNot ReadIni$(Settings$,GrX,G6)=0.000000:Let Belegt6$=(+S$[36]+ : +ReadIni$(Settings$,GrX,G6N)+ )
    CaseNot ReadIni$(Settings$,GrX,G7)=0.000000:Let Belegt7$=(+S$[36]+ : +ReadIni$(Settings$,GrX,G7N)+ )
    CaseNot ReadIni$(Settings$,GrX,G8)=0.000000:Let Belegt8$=(+S$[36]+ : +ReadIni$(Settings$,GrX,G8N)+ )
    CaseNot ReadIni$(Settings$,GrX,G9)=0.000000:Let Belegt9$=(+S$[36]+ : +ReadIni$(Settings$,GrX,G9N)+ )
    WindowStyle 16
    Let Hinzufugen%=@CreateWindow(%HWND,S$[37],(%maxx/2-190),(%maxy/2-120),380,213+cycaption&)
    @CreateGroupBox(Hinzufugen%,Farbe,35,15,120,155)
    Let FarbButton%=@CreateButton(Hinzufugen%,Farbe ändern,45,143,100,20)
    @Control(Static,,$50001000,45,30,100,100,Hinzufugen%,1000,%Hinstance)
    FarbAnzeige
    Let TypButton1%=@CreateButton(Hinzufugen%,S$[42],170,30,150,25)
    Let TypButton2%=@CreateButton(Hinzufugen%,Deaktiviert,170,90,150,25)
    Let LadenDatei%=@CreateButton(Hinzufugen%,S$[40],35,217,70,20)
    Let LadenIntern%=@CreateButton(Hinzufugen%,S$[41],120,190,70,20)
    Let HinzufugenB%=@CreateButton(Hinzufugen%,S$[38],205,190,70,20)
    Let HinzufugenA%=@CreateButton(Hinzufugen%,S$[39],290,190,70,20)
    Let GenauigkeitsAuswahl&=@CreateChoiceBox(Hinzufugen%,,170,135,150,15)
    Let StartAuswahl$=Jeden Pixel berechnen
    @AddChoice(GenauigkeitsAuswahl&,Jeden Pixel berechnen)
    @AddChoice(GenauigkeitsAuswahl&,Jeden 2.Pixel berechnen)
    @AddChoice(GenauigkeitsAuswahl&,Jeden 3.Pixel berechnen)
    @AddChoice(GenauigkeitsAuswahl&,Jeden 4.Pixel berechnen)
    @AddChoice(GenauigkeitsAuswahl&,Jeden 5.Pixel berechnen)
    @SendMessage(GenauigkeitsAuswahl&,$014E,@SendMessage(GenauigkeitsAuswahl&,$014C,-1,(@Addr(StartAuswahl$)+1)),0)
    HinzufugenBild
    Let Graph1%=1
    Let Graph2%=1

    WhileNot Ende%

        WaitInput
        Let wmPaint%=%wmPaint

        If wmPaint%

            FarbAnzeige
            HinzufugenBild

        EndIf

        If @And(@GetFocus(FarbButton%),@Not(wmPaint%))

            FarbAuswahl
            FarbAnzeige

        EndIf

        If @GetFocus(TypButton1%)

            FensterPosition %HWND
            Mausposition
            CreateMenu
            AppendMenu 801,S$[42]
            AppendMenu 802,S$[43]
            AppendMenu 803,S$[44]
            AppendMenu 804,S$[45]
            AppendMenu 805,S$[46]
            AppendMenu 806,S$[47]
            AppendMenu 807,S$[48]
            AppendMenu 808,S$[66]
            AppendMenu 809,S$[123]
            AppendMenu 810,S$[124]
            AppendMenu 811,S$[125]
            TrackMenu ((MausX&-FensterX1&)-30),((MausY&-FensterY1&)-30)

            If @MenuItem(801)

                SetText TypButton1%,S$[42]
                Let Graph1%=1

            ElseIf @MenuItem(802)

                SetText TypButton1%,S$[43]
                Let Graph1%=2

            ElseIf @MenuItem(803)

                SetText TypButton1%,S$[44]
                Let Graph1%=3

            ElseIf @MenuItem(804)

                SetText TypButton1%,S$[45]
                Let Graph1%=4

            ElseIf @MenuItem(805)

                SetText TypButton1%,S$[46]
                Let Graph1%=5

            ElseIf @MenuItem(806)

                SetText TypButton1%,S$[47]
                Let Graph1%=6

            ElseIf @MenuItem(807)

                SetText TypButton1%,S$[48]
                Let Graph1%=7

            ElseIf @MenuItem(808)

                SetText TypButton1%,S$[66]
                Let Graph1%=8

            ElseIf @MenuItem(809)

                SetText TypButton1%,S$[123]
                Let Graph1%=9

            ElseIf @MenuItem(810)

                SetText TypButton1%,S$[124]
                Let Graph1%=10

            ElseIf @MenuItem(811)

                SetText TypButton1%,S$[125]
                Let Graph1%=11

            EndIf

        EndIf

        If @GetFocus(TypButton2%)

            FensterPosition %HWND
            Mausposition
            CreateMenu
            AppendMenu 801,S$[42]
            AppendMenu 802,S$[43]
            AppendMenu 803,S$[44]
            AppendMenu 804,S$[45]
            AppendMenu 805,S$[46]
            AppendMenu 806,S$[47]
            AppendMenu 807,S$[48]
            AppendMenu 808,S$[66]
            AppendMenu 809,S$[123]
            AppendMenu 810,S$[124]
            AppendMenu 811,S$[125]
            AppendMenu 812,Deaktiviert
            TrackMenu ((MausX&-FensterX1&)-30),((MausY&-FensterY1&)-30)

            If @MenuItem(801)

                SetText TypButton2%,S$[42]
                Let Graph2%=1
                Let GT$[1]=2

            ElseIf @MenuItem(802)

                SetText TypButton2%,S$[43]
                Let Graph2%=2
                Let GT$[1]=2

            ElseIf @MenuItem(803)

                SetText TypButton2%,S$[44]
                Let Graph2%=3
                Let GT$[1]=2

            ElseIf @MenuItem(804)

                SetText TypButton2%,S$[45]
                Let Graph2%=4
                Let GT$[1]=2

            ElseIf @MenuItem(805)

                SetText TypButton2%,S$[46]
                Let Graph2%=5
                Let GT$[1]=2

            ElseIf @MenuItem(806)

                SetText TypButton2%,S$[47]
                Let Graph2%=6
                Let GT$[1]=2

            ElseIf @MenuItem(807)

                SetText TypButton2%,S$[48]
                Let Graph2%=7
                Let GT$[1]=2

            ElseIf @MenuItem(808)

                SetText TypButton2%,S$[66]
                Let Graph2%=8
                Let GT$[1]=2

            ElseIf @MenuItem(809)

                SetText TypButton2%,S$[123]
                Let Graph2%=9
                Let GT$[1]=2

            ElseIf @MenuItem(810)

                SetText TypButton2%,S$[124]
                Let Graph2%=10
                Let GT$[1]=2

            ElseIf @MenuItem(811)

                SetText TypButton2%,S$[125]
                Let Graph2%=11
                Let GT$[1]=2

            ElseIf @MenuItem(812)

                SetText TypButton2%,Deaktiviert
                Let GT$[1]=1

            EndIf

        EndIf

        Case @GetFocus(HinzufugenA%):Let Ende%=1

        If @GetFocus(LadenDatei%)

            @DestroyWindow(Hinzufugen%)
            Declare LD$
            Let LD$=@LoadFile$(S$[8],S$[51]+ (*.GrS)|*.GrS)

            IfNot LD$=

                If ReadIni$(LD$,Typ,Code)=0011011000110100001101100011000100110111001100000011011000111001001101110110000100110111011000010011011000110001001101100011011000110111001100100011011000110101001101110011001100110111001100110011011000110001

                    If ReadIni$(LD$,Typ,Version)=GrS0.6

                        Graph ReadIni$(LD$,GrS,G), ReadIni$(LD$,GrS,G1), ReadIni$(LD$,GrS,G2), ReadIni$(LD$,GrS,G3), ReadIni$(LD$,GrS,G4)

                    ElseIf ReadIni$(LD$,Typ,Version)=S 0.65 beta

                        Let Temp$[1]=ReadIni$(LD$,GrS,G)
                        Let Temp$[2]=ReadIni$(LD$,GrS,G1)
                        Let Temp$[3]=ReadIni$(LD$,GrS,G2)
                        Let Temp$[4]=ReadIni$(LD$,GrS,G3)
                        Let Temp$[5]=ReadIni$(LD$,GrS,G4)
                        Let Temp$[6]=ReadIni$(LD$,GrS,G5)
                        Let Temp$[7]=ReadIni$(LD$,GrS,G6)
                        Let Temp$[8]=ReadIni$(LD$,GrS,G7)
                        Let Temp$[9]=ReadIni$(LD$,GrS,G8)
                        Let Temp$[10]=ReadIni$(LD$,GrS,G9)
                        Let Temp$[11]=ReadIni$(LD$,GrS,G10)
                        Let Temp$[12]=ReadIni$(LD$,GrS,G11)
                        Let Temp$[13]=ReadIni$(LD$,GrS,G12)
                        Let Temp$[14]=ReadIni$(LD$,GrS,G13)
                        Graph Temp$[1], Temp$[2], Temp$[3], Temp$[4], Temp$[5], Temp$[6], Temp$[7], Temp$[8], Temp$[9], Temp$[10], Temp$[11], Temp$[12], Temp$[13], Temp$[14]

                    EndIf

                Else

                    MessageBox(S$[33],S$[4],16)

                EndIf

            Else

                MessageBox(S$[33],S$[4],16)

            EndIf

            Let Ende%=1

        EndIf

        If @GetFocus(LadenIntern%)

            Let Graph1%=-1
            @SetFocus(HinzufugenB%)

        EndIf

        If @GetFocus(HinzufugenB%)

            @DestroyWindow(Hinzufugen%)
            Let Hinzufugen%=@CreateWindow(%HWND,S$[49],(%maxx/2-190),(%maxy/2-120),380,213+cycaption&)
            Let HinzufugenB%=@CreateButton(Hinzufugen%,S$[50],200,190,75,20)
            Let HinzufugenA%=@CreateButton(Hinzufugen%,S$[39],290,190,75,20)
            HinzufugenBild

            If Graph1%=-1

                Let GraphLadenN1%=@CreateRadioButton(Hinzufugen%,Nr. 1 +Belegt1$,50,20,290,17)
                Let GraphLadenN2%=@CreateRadioButton(Hinzufugen%,Nr. 2 +Belegt2$,50,35,290,17)
                Let GraphLadenN3%=@CreateRadioButton(Hinzufugen%,Nr. 3 +Belegt3$,50,50,290,17)
                Let GraphLadenN4%=@CreateRadioButton(Hinzufugen%,Nr. 4 +Belegt4$,50,65,290,17)
                Let GraphLadenN5%=@CreateRadioButton(Hinzufugen%,Nr. 5 +Belegt5$,50,80,290,17)
                Let GraphLadenN6%=@CreateRadioButton(Hinzufugen%,Nr. 6 +Belegt6$,50,95,290,17)
                Let GraphLadenN7%=@CreateRadioButton(Hinzufugen%,Nr. 7 +Belegt7$,50,110,290,17)
                Let GraphLadenN8%=@CreateRadioButton(Hinzufugen%,Nr. 8 +Belegt8$,50,125,290,17)
                Let GraphLadenN9%=@CreateRadioButton(Hinzufugen%,Nr. 9 +Belegt9$,50,140,290,17)
                Case Belegt1$=(+S$[35]+):EnableWindow GraphLadenN1%,0
                Case Belegt2$=(+S$[35]+):EnableWindow GraphLadenN2%,0
                Case Belegt3$=(+S$[35]+):EnableWindow GraphLadenN3%,0
                Case Belegt4$=(+S$[35]+):EnableWindow GraphLadenN4%,0
                Case Belegt5$=(+S$[35]+):EnableWindow GraphLadenN5%,0
                Case Belegt6$=(+S$[35]+):EnableWindow GraphLadenN6%,0
                Case Belegt7$=(+S$[35]+):EnableWindow GraphLadenN7%,0
                Case Belegt8$=(+S$[35]+):EnableWindow GraphLadenN8%,0
                Case Belegt9$=(+S$[35]+):EnableWindow GraphLadenN9%,0

            EndIf

            Case Graph1%=1:Graph1 0
            Case Graph1%=2:Graph2 0
            Case Graph1%=3:Graph3 0
            Case Graph1%=4:Graph4 0
            Case Graph1%=5:Graph5 0
            Case Graph1%=6:Graph6 0
            Case Graph1%=7:Graph7 0
            Case Graph1%=8:Graph8 0
            Case Graph1%=9:Graph9 0
            Case Graph1%=10:Graph10 0
            Case Graph1%=11:Graph11 0

            If GT$[1]=2

                Case Graph2%=1:Graph1 1
                Case Graph2%=2:Graph2 1
                Case Graph2%=3:Graph3 1
                Case Graph2%=4:Graph4 1
                Case Graph2%=5:Graph5 1
                Case Graph2%=6:Graph6 1
                Case Graph2%=7:Graph7 1
                Case Graph2%=8:Graph8 1
                Case Graph2%=9:Graph9 1
                Case Graph2%=10:Graph10 1
                Case Graph2%=11:Graph11 1

            EndIf

            WhileNot Ende%

                Sleep(10)
                Mausposition
                Let j%=1

                While j%<=14

                    Case @GetFocus(BruchButton%[1,j%]):BruchEingabe E%[1,j%],MausX&,MausY&
                    Case @GetFocus(BruchButton%[2,j%]):BruchEingabe E%[2,j%],MausX&,MausY&
                    Inc j%

                EndWhile

                If Graph1%=8

                    IfNot @Or(@GetText$(Edit1%)=,@GetText$(Edit2%)=)

                        EnableWindow Edit3%,1
                        EnableWindow Edit4%,1

                    Else

                        EnableWindow Edit3%,0
                        EnableWindow Edit4%,0

                    EndIf

                    IfNot @Or(@Or(@GetText$(Edit1%)=,@GetText$(Edit2%)=),@Or(@GetText$(Edit3%)=,@GetText$(Edit4%)=))

                        EnableWindow Edit5%,1
                        EnableWindow Edit6%,1

                    Else

                        EnableWindow Edit5%,0
                        EnableWindow Edit6%,0

                    EndIf

                    IfNot @Or(@Or(@Or(@GetText$(Edit1%)=,@GetText$(Edit2%)=),@Or(@GetText$(Edit3%)=,@GetText$(Edit4%)=)),@Or(@GetText$(Edit5%)=,@GetText$(Edit6%)=))

                        EnableWindow Edit7%,1
                        EnableWindow Edit8%,1

                    Else

                        EnableWindow Edit7%,0
                        EnableWindow Edit8%,0

                    EndIf

                    IfNot @Or(@Or(@Or(@GetText$(Edit1%)=,@GetText$(Edit2%)=),@Or(@GetText$(Edit3%)=,@GetText$(Edit4%)=)),@Or(@Or(@GetText$(Edit5%)=,@GetText$(Edit6%)=),@Or(@GetText$(Edit7%)=,@GetText$(Edit8%)=)))

                        EnableWindow Edit9%,1
                        EnableWindow Edit10%,1

                    Else

                        EnableWindow Edit9%,0
                        EnableWindow Edit10%,0

                    EndIf

                    IfNot @Or(@Or(@Or(@GetText$(Edit1%)=,@GetText$(Edit2%)=),@Or(@GetText$(Edit3%)=,@GetText$(Edit4%)=)),@Or(@Or(@GetText$(Edit5%)=,@GetText$(Edit6%)=),@Or(@GetText$(Edit7%)=,@GetText$(Edit8%)=)))

                        IfNot @Or(@GetText$(Edit9%)=,@GetText$(Edit10%)=)

                            EnableWindow Edit11%,1
                            EnableWindow Edit12%,1

                        Else

                            EnableWindow Edit11%,0
                            EnableWindow Edit12%,0

                        EndIf

                    Else

                        EnableWindow Edit11%,0
                        EnableWindow Edit12%,0

                    EndIf

                    IfNot @Or(@Or(@Or(@GetText$(Edit1%)=,@GetText$(Edit2%)=),@Or(@GetText$(Edit3%)=,@GetText$(Edit4%)=)),@Or(@Or(@GetText$(Edit5%)=,@GetText$(Edit6%)=),@Or(@GetText$(Edit7%)=,@GetText$(Edit8%)=)))

                        IfNot @Or(@Or(@GetText$(Edit9%)=,@GetText$(Edit10%)=),@Or(@GetText$(Edit11%)=,@GetText$(Edit12%)=))

                            EnableWindow Edit13%,1
                            EnableWindow Edit14%,1

                        Else

                            EnableWindow Edit13%,0
                            EnableWindow Edit14%,0

                        EndIf

                    Else

                        EnableWindow Edit13%,0
                        EnableWindow Edit14%,0

                    EndIf

                EndIf

                Case @GetFocus(HinzufugenA%):Let Ende%=1

                If @GetFocus(HinzufugenB%)

                    If Graph1%=1

                        Kurzezahl @KtP(@GetText$(E%[1,1]))
                        Let GT$[2]=@Add$(@Add$(@Str$(Graph1%),|1|),@Add$(@$(0),|))
                        Kurzezahl @KtP(@GetText$(E%[1,2]))
                        Let GT$[2]=@Add$(@Add$(GT$[2],@$(0)),|)
                        Kurzezahl @KtP(@GetText$(E%[1,3]))
                        Let GT$[2]=@Add$(@Add$(GT$[2],@$(0)),|)
                        Let GT$[2]=@Add$(GT$[2],||||||||)

                    ElseIf @Or(Graph1%=2,Graph1%=6)

                        Dec Graph1%
                        Let GT$[2]=@Add$(@Add$(@Str$(Graph1%),|),@Add$(@KtP(@GetText$(E%[1,1])),|))
                        Let GT$[2]=@Add$(@Add$(GT$[2],@KtP(@GetText$(E%[1,2]))),|)
                        Let GT$[2]=@Add$(@Add$(GT$[2],@KtP(@GetText$(E%[1,3]))),|)
                        Let GT$[2]=@Add$(@Add$(GT$[2],@KtP(@GetText$(E%[1,4]))),|)
                        Let GT$[2]=@Add$(GT$[2],|||||||)

                    ElseIf @Or(@Or(@Or(Graph1%=3,Graph1%=4),@Or(Graph1%=5,Graph1%=9)),@Or(Graph1%=10,Graph1%=11))

                        Dec Graph1%
                        Let GT$[2]=@Add$(@Add$(@Str$(Graph1%),|),@Add$(@KtP(@GetText$(E%[1,1])),|))
                        Let GT$[2]=@Add$(@Add$(GT$[2],@KtP(@GetText$(E%[1,2]))),|)
                        Let GT$[2]=@Add$(GT$[2],||||||||||)

                    EndIf

                    If GT$[1]=2

                        If Graph2%=1

                            Let GT$[3]=@Add$(@Add$(@Str$(Graph2%),|1|),@Add$(@KtP(@GetText$(E%[2,1])),|))
                            Let GT$[3]=@Add$(@Add$(GT$[3],@KtP(@GetText$(E%[2,2]))),|)
                            Let GT$[3]=@Add$(@Add$(GT$[3],@KtP(@GetText$(E%[2,3]))),|)
                            Let GT$[3]=@Add$(GT$[3],||||||||)

                        ElseIf @Or(Graph2%=2,Graph2%=6)

                            Dec Graph2%
                            Let GT$[3]=@Add$(@Add$(@Str$(Graph2%),|),@Add$(@KtP(@GetText$(E%[2,1])),|))
                            Let GT$[3]=@Add$(@Add$(GT$[3],@KtP(@GetText$(E%[2,2]))),|)
                            Let GT$[3]=@Add$(@Add$(GT$[3],@KtP(@GetText$(E%[2,3]))),|)
                            Let GT$[3]=@Add$(@Add$(GT$[3],@KtP(@GetText$(E%[2,4]))),|)
                            Let GT$[3]=@Add$(GT$[3],|||||||)

                        ElseIf @Or(@Or(@Or(Graph2%=3,Graph2%=4),@Or(Graph2%=5,Graph2%=9)),@Or(Graph2%=10,Graph2%=11))

                            Dec Graph2%
                            Let GT$[3]=@Add$(@Add$(@Str$(Graph2%),|),@Add$(@KtP(@GetText$(E%[2,1])),|))
                            Let GT$[3]=@Add$(@Add$(GT$[3],@KtP(@GetText$(E%[2,2]))),|)
                            Let GT$[3]=@Add$(GT$[3],||||||||||)

                        EndIf

                    EndIf

                    Graph @Add$(@Add$(@Add$(GT$[1],|),@Add$(GT$[2],|)),GT$[3])
                    Clear GT$[1]
                    Clear GT$[2]
                    Clear GT$[3]
                    Let Ende%=1

                    If Graph1%=-1

                        Case @GetCheck(GraphLadenN1%):Let GL%=1
                        Case @GetCheck(GraphLadenN2%):Let GL%=2
                        Case @GetCheck(GraphLadenN3%):Let GL%=3
                        Case @GetCheck(GraphLadenN4%):Let GL%=4
                        Case @GetCheck(GraphLadenN5%):Let GL%=5
                        Case @GetCheck(GraphLadenN6%):Let GL%=6
                        Case @GetCheck(GraphLadenN7%):Let GL%=7
                        Case @GetCheck(GraphLadenN8%):Let GL%=8
                        Case @GetCheck(GraphLadenN9%):Let GL%=9
                        Let Temp$[1]=ReadIni$(Settings$,GrX,G+@Str$(GL%)),
                        Let Temp$[2]=ReadIni$(Settings$,GrX,G+@Str$(GL%)+1)
                        Let Temp$[3]=ReadIni$(Settings$,GrX,G+@Str$(GL%)+2)
                        Let Temp$[4]=ReadIni$(Settings$,GrX,G+@Str$(GL%)+3)
                        Let Temp$[5]=ReadIni$(Settings$,GrX,G+@Str$(GL%)+4)
                        Let Temp$[6]=ReadIni$(Settings$,GrX,G+@Str$(GL%)+5)
                        Let Temp$[7]=ReadIni$(Settings$,GrX,G+@Str$(GL%)+6)
                        Let Temp$[8]=ReadIni$(Settings$,GrX,G+@Str$(GL%)+7)
                        Let Temp$[9]=ReadIni$(Settings$,GrX,G+@Str$(GL%)+8)
                        Let Temp$[10]=ReadIni$(Settings$,GrX,G+@Str$(GL%)+9)
                        Let Temp$[11]=ReadIni$(Settings$,GrX,G+@Str$(GL%)+10)
                        Let Temp$[12]=ReadIni$(Settings$,GrX,G+@Str$(GL%)+11)
                        Let Temp$[13]=ReadIni$(Settings$,GrX,G+@Str$(GL%)+12)
                        Let Temp$[14]=ReadIni$(Settings$,GrX,G+@Str$(GL%)+13)
                        Graph Temp$[1], Temp$[2], Temp$[3], Temp$[4], Temp$[5], Temp$[6], Temp$[7], Temp$[8], Temp$[9], Temp$[10], Temp$[11], Temp$[12], Temp$[13], Temp$[14]
                        Let Ende%=1

                    EndIf

                EndIf

            EndWhile

            @DestroyWindow(Hinzufugen%)

        EndIf

    EndWhile

    Let Ende%=0
    @DestroyWindow(Hinzufugen%)

endproc


Woran liegt das ?
 
Debian Lenny, Intel Celeron 2,8 Ghz, 768 MB Ram && Win XP Pro, Intel C2D 1,66Ghz, 2 GB Ram ... PROFAN² 6.6
07.07.2007  
 




Jörg
Sellmeyer
Hallo Christian,
Tja, das ist natürlich etwas schlecht. Da in dem zweiten Teil gar keine Choicebox auftaucht, dieses nur eine Prozedur ist, die wahrscheinlich ein Hautptfenster braucht und ein Cls vor dem Prozeduraufruf sofort nichtdeklarierte Variablen anmeckert, ist es schwierig da irgendeinen sinnvollen Hinweis zu geben.
Du hast ja selber festgestellt, daß es oben funktioniert. Also mußt Du Deine Codestruktur nochmal überprüfen. Entweder kannst Du dann ein lauffähiges Beispiel erstellen oder Du kommst sowieso von allein drauf.
Sprich: Schmeiß alles raus, was für das Beispiel unwichtig ist und ich schätze Du findest die Lösung.
Gruß
Jörg
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
07.07.2007  
 



Wenn ein Source als Text zu groß für den Beitrag ist dann kannst Du ihn auch einfach als Datei per Dateianhang hochladen.
 
08.07.2007  
 




Christian
Eichler
Ja, aber an sich ist es schon so, dass wenn ich
KompilierenMarkierenSeparieren
schreibe, dass da dann doch auf jeden Fall eine ChoiceBox mit den 5 Auswahlmöglichkeiten erscheint, oder täusche ich mich da grad ?

Kann man bei ChoiceBoxen da irgendeinen Fehler machen ?
 
Debian Lenny, Intel Celeron 2,8 Ghz, 768 MB Ram && Win XP Pro, Intel C2D 1,66Ghz, 2 GB Ram ... PROFAN² 6.6
08.07.2007  
 




Jörg
Sellmeyer
Genau - aber eben dieses Create(ChoiceBox,...) taucht in Deinem meterlangen Beispiel nicht auf...
Wohlgemerkt: Es taucht als Codezeile nicht auf und darum natürlich auch im Programmablauf nicht!
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
08.07.2007  
 




Christian
Eichler

KompilierenMarkierenSeparieren
Let HinzufugenB%=@CreateButton(Hinzufugen%,S$[38],205,190,70,20)
Let HinzufugenA%=@CreateButton(Hinzufugen%,S$[39],290,190,70,20)
Let GenauigkeitsAuswahl&=@CreateChoiceBox(Hinzufugen%,,170,135,150,15)
Let StartAuswahl$=Jeden Pixel berechnen
@AddChoice(GenauigkeitsAuswahl&,Jeden Pixel berechnen)
@AddChoice(GenauigkeitsAuswahl&,Jeden 2.Pixel berechnen)
@AddChoice(GenauigkeitsAuswahl&,Jeden 3.Pixel berechnen)
@AddChoice(GenauigkeitsAuswahl&,Jeden 4.Pixel berechnen)
@AddChoice(GenauigkeitsAuswahl&,Jeden 5.Pixel berechnen)
@SendMessage(GenauigkeitsAuswahl&,$014E,@SendMessage(GenauigkeitsAuswahl&,$014C,-1,(@Addr(StartAuswahl$)+1)),0)
HinzufugenBild
Let Graph1%=1

Hier ist doch das @CreateChoiceBox in dem meterlangen Programmteil !?
 
Debian Lenny, Intel Celeron 2,8 Ghz, 768 MB Ram && Win XP Pro, Intel C2D 1,66Ghz, 2 GB Ram ... PROFAN² 6.6
08.07.2007  
 




Nico
Madysa
Hmm, ich hab jetzt nur die beiden letzten Quelltexte gelesen, aber in dem ersten weist du die Einträge dem Handle test& zu und im zweiten erstellt du eine ChoiceBox mit dem Handle Genauigkeitsauswahl&. Könnte das vielleicht das Problem sein?
 
Nico Madysa
08.07.2007  
 




Christian
Eichler
Wo sollte da das Problem liegen ?
Müsste doch auch funktionnieren, wenn die Variable nicht test& heißt oder ?
Vorrausgesetzt sie ist declariert natürlich !

PS: Hab in dem Beispiel :
KompilierenMarkierenSeparieren
Das test& durch ein Genauigkeitsauswahl& ersetzt :
--> geht auch !
 
Debian Lenny, Intel Celeron 2,8 Ghz, 768 MB Ram && Win XP Pro, Intel C2D 1,66Ghz, 2 GB Ram ... PROFAN² 6.6
08.07.2007  
 




Jörg
Sellmeyer
Hoppla! Das habe ich doch glatt übersehen.
KompilierenMarkierenSeparieren
Cls
Declare Hinzufugen%,GenauigkeitsAuswahl&
Hinzufugen%=@CreateWindow(%HWND,,(%maxx/2-190),(%maxy/2-120),380,213)
GenauigkeitsAuswahl&=@CreateChoiceBox(Hinzufugen%,,170,135,150,150)
@AddChoice(GenauigkeitsAuswahl&,Jeden Pixel berechnen)
@AddChoice(GenauigkeitsAuswahl&,Jeden 2.Pixel berechnen)
@AddChoice(GenauigkeitsAuswahl&,Jeden 3.Pixel berechnen)
Randomize

While 1

    Waitinput
    SendMessage(GenauigkeitsAuswahl&,$014E,Rnd(3),0)

Wend


So etwas meine ich mit lauffähigem Beispiel. Wenn man sich durch so eine ellenlange Codewüste quälen muß, ist es naturgemäß schwieriger, einen Fehler zu finden.
Du hast die Höhe der Choicebox zu klein gewählt. Die Höhe des aufgeklappten Controls muß angegeben werden.
Gruß
Jörg
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
08.07.2007  
 




Christian
Eichler
AAahh... vielen Dank ! Da muss man erst mal drauf kommen ...
Ja, jetzt ist mein Problem gelöst !
 
Debian Lenny, Intel Celeron 2,8 Ghz, 768 MB Ram && Win XP Pro, Intel C2D 1,66Ghz, 2 GB Ram ... PROFAN² 6.6
08.07.2007  
 




Jörg
Sellmeyer
Schön. Dein Windowstyle 16 kannst Du Dir an der Stelle übrigens sparen. Dialogfenster haben sowieso kein Menü.
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
08.07.2007  
 




Christian
Eichler
Hehe... programmiertechnisch ist mein Programm ja sowieso noch nicht 100%-ig.
Ich hab es jetzt geschafft, den Quellcode von 4000 auf unter 3000 Zeilen zu bringen.
Daran sieht man mal wieder, wie ausführlich der Code war !

Aber danke, ich werden das Windowstyle 16 rausnehmen !
 
Debian Lenny, Intel Celeron 2,8 Ghz, 768 MB Ram && Win XP Pro, Intel C2D 1,66Ghz, 2 GB Ram ... PROFAN² 6.6
08.07.2007  
 




Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

658 Betrachtungen

Unbenanntvor 0 min.
H.Brill20.09.2024
rquindt21.04.2018
Ernst21.04.2014
Heltal02.02.2014
Mehr...

Themeninformationen



Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie