Mithilfe / Codeoptimierung

Anfängerfragen zum Programmieren mit PureBasic.
smateja
Beiträge: 250
Registriert: 25.11.2004 19:51
Computerausstattung: Alienware Aurora / Intel Core i7 CPU @ 2.8 GHz / 64 Bit OS

Mithilfe / Codeoptimierung

Beitrag von smateja »

Hallo Liebe Community,

ich sitze derzeit (da ich mit ner Grippe krank geschrieben bin) nach langer Zeit mal wieder an PureBasic und geh ein wenig meinem Hobby nach. Irgendwie - dank der Grippe - muss ich mich aktuell hier als "LowBrainer" einstufen und bitte um eure mithilfe bei folgendem Code.

Ziel: Evtl. aus den Prozeduren eine einzige zu machen die das gleiche erfüllt, ohne die flacker Effekte und Darstellungsfehler. Wenn machbar nicht ultra kompliziert sondern für Anfänger noch gut lesbar.

Bedingung: Das Container-Gadget sollte bewusst bestehen bleiben.

Merci schon mal im Voraus für alle die sich hier mit Anfänger-Problemchen - mit herumschlagen.

Code: Alles auswählen


EnableExplicit

;{ Enumerierungen

Enumeration
  
  #Fenster_Regiezentrum
  #Container_Top
  #Container_Top_Canvas_Arrow
  #GFX_Bar_Top
  #ImageGadget_Bar_Top
  
EndEnumeration

;}


;{ Globale Variablendefinitionen

Global Fenster_Event
Global Bar_Top_State.s ="open"

;}

Procedure Bar_Top_Zeichnen()

  If IsImage(#GFX_Bar_Top)
    FreeImage(#GFX_Bar_Top)
  Else
    If CreateImage(#GFX_Bar_Top, GadgetWidth(#Container_Top), GadgetHeight(#Container_Top))
      StartDrawing(ImageOutput(#GFX_Bar_Top))  
      Box(0,0,GadgetWidth(#Container_Top),68, RGB(0,0,0))  
      Line(17,66,GadgetWidth(#Container_Top)-34,1,RGB(51,51,51))
      StopDrawing()
      
      If IsGadget(#ImageGadget_Bar_Top)
        DisableGadget(#ImageGadget_Bar_Top,0)
        SetGadgetState(#ImageGadget_Bar_Top,ImageID(#GFX_Bar_Top))
        DisableGadget(#ImageGadget_Bar_Top,1)
      EndIf
    EndIf
  EndIf

EndProcedure
Procedure Bar_Top_Resize()
  
  If Bar_Top_State.s = "open"
    ResizeGadget(#Container_Top, 0, 0, WindowWidth(#Fenster_Regiezentrum), 68)
    ResizeGadget(#Container_Top_Canvas_Arrow,GadgetWidth(#Container_Top)/2-8,52,#PB_Ignore,#PB_Ignore) 
  EndIf
  
  
  If Bar_Top_State.s ="close"
    ResizeGadget(#Container_Top, 0, -40, WindowWidth(#Fenster_Regiezentrum), 68)
    ResizeGadget(#Container_Top_Canvas_Arrow,GadgetWidth(#Container_Top)/2-8,52,#PB_Ignore,#PB_Ignore) 
  EndIf
  
EndProcedure
Procedure Bar_Top_ArrowButton_State()
  
  UsePNGImageDecoder()
  
  Define Image_Button_Open = CatchImage(#PB_Any, ?arrow_open_png)
  Define Image_Button_Close = CatchImage(#PB_Any, ?arrow_close_png)
  
  If Bar_Top_State.s ="open"
    SetGadgetAttribute(#Container_Top_Canvas_Arrow,#PB_Canvas_Image,(ImageID(Image_Button_Close)))
  EndIf
  
  If Bar_Top_State.s = "close"
    SetGadgetAttribute(#Container_Top_Canvas_Arrow,#PB_Canvas_Image,(ImageID(Image_Button_Open)))
  EndIf
  
  
  DataSection
    arrow_open_png:
    Data.q $0A1A0A0D474E5089,$524448490D000000,$0900000011000000,$508A5B0000000208,$594870090000005B
    Data.q $0B0000130B000073,$0000189C9A000113,$6850504343694F0A,$20706F68736F746F,$666F727020434349
    Data.q $9DDA780000656C69,$F73D16E953546753,$4B9480884B42F4DE,$8B4252200815526F,$1009212A26911480
    Data.q $C15115D9A121884A,$88A0C81B04454511,$2C51158C808E8E03,$A221E407D80A8A0C,$E1FBCA8A88A3838E
    Data.q $CDE6F7BCD66BA37B,$9DF3ACE73ED7B5FE,$48960C08C007CFB3,$1E42A90C80355133,$E4E1C6C4C783E011
    Data.q $100070240A81402E,$0123FD732164B308,$C0222B3C3C7EF800,$080BD3780100BE07,$871C30C09B4DC000
    Data.q $80015C9942EA0FFF,$084B389174C00184,$A6428E7A40001480,$26989D8001464000,$63CB600004A00053
    Data.q $2760002D5000E362,$99F89D8000D3E67F,$011521945B00017B,$44886513200091A0,$8A56CFAC003B6800
    Data.q $4B66140030580045,$4930002DD80039C4,$C000B7B000486657,$000C0800B20B10CE,$7B04002985885130
    Data.q $8400782323C86000,$F13C57F246140099,$7800002AE710AE2B,$81453924B93CB299,$2E575707712D085B
    Data.q $36142B1749CE281E,$79C22E409A610261,$F3E00F3481321999,$E0111591A00000CC,$CEAE0ECE78FDF383
    Data.q $EA2D5F0EB68E36CE,$FEE3626222FF06BF,$E100004070ABCFE5,$1AB32F2CFED17E74,$25A2FE6D80063B80
    Data.q $F775A00B5E6804EE,$A000B5400FB2668B,$3C7EF870F357DAE9,$E5D9D9B990A1453C,$615B42C44AD8E4E4
    Data.q $C05FC267FE7D57CA,$F7FC3C7EF96CFD57,$5D328124E2BEE0F5,$F4CCC2E0F8044781,$62840992CF1CA54C
    Data.q $FF0BB7FC478FE6DC,$B96249C422D31DFC,$8E711251E3142A58,$8922A532F38C9A44,$64FFD225C5299242
    Data.q $35DF3E03FB2CDFE2,$2D917B013E6AB000,$10274BF603635DA8,$F20000F7E2C07458,$80030828D4C16FBB
    Data.q $3FEFFF77CFE18368,$4966800025A047FD,$2E24445E00007192,$000008C73FB3CA54,$F41B41B02A81A044
    Data.q $05C11C06C02C18C1,$42843660FC0BC1DC,$640A421042C2C424,$4282AC2960721C80,$2F602A1DB0CD8628
    Data.q $866851C0341D40D4,$0EB855C22E0E7093,$C19E0861FA0F703D,$08C841040981BC28,$8A620188DA216113
    Data.q $F8859917088E2358,$20248B120448C121,$35914B22511488C9,$485520548A523148,$5C873902723DF21D
    Data.q $823200C83B91BA46,$B281943147BC86FC,$A8B943B50CD43D51,$64D00BA246841A37,$D09BA0168F9A3174
    Data.q $E7A1368C3D1AB472,$433E8FDA0F68ABD0,$C4330718E8C030C7,$38B142C3C62E306C,$AC22B1CB6393092C
    Data.q $03AC56B01AC6AB0C,$0477B1CF63F589BB,$77043609C0458112,$4C5848411E612042,$241C20A848D84E58
    Data.q $8403093709DA1134,$B44BA8932227C251,$326218C4F911BA26,$12D6232C48588731,$C443887B102F138F
    Data.q $B927324389122437,$12D254A4B1490290,$2CE923526ED246D2,$C993231A48349BA9,$2C943907B26B64DA
    Data.q $C3E49DE485C82B20,$5BF221E41BE433E4,$53F8A47140629D0A,$E5194A6ACA5228E2,$32986506E534E510
    Data.q $A1A8DD529AA35541,$A1AD425A8F351154,$3413A88751AF52B6,$4B491683CD399A75,$17681AD395A2ADA5
    Data.q $11BA74E8AF69F768,$D257D0974E1E95DD,$F403E897E847E9CB,$88C78315860D0C77,$671807189B192867
    Data.q $19A64C98AF187719,$31373054C7198BD3,$556F990F99E798EB,$CA91157C2AB62A58,$2A1B9526954A950A
    Data.q $AADEAAA6AAA9542F,$A98F54CB55F3550B,$53335546AE7D535E,$AA55AB96D409A9E3,$A967531B53EB509D
    Data.q $546FA867AA87A83B,$590689FD597EA43F,$A051A4434FC34CC3,$630B20C6BCE35FB1,$AB0D6B212C78B319
    Data.q $CDB126C435817586,$1DFD98BB2A767CD9,$4339A1A9AA3D8BBB,$94F352B357334A33,$9CF87198E3073F66
    Data.q $F397A728E7094E74,$29E229EF14DE8A7E,$5C6531B94C34A61B,$48AB58969796AA6B,$AE36BDEB47AB51AB
    Data.q $59BB45BDA69DA7ED,$5C274AC7410E81FB,$E79D05CE8F674727,$16A70AA7DD53D953,$6BAA2EAEF53A3D4D
    Data.q $6EBF7744BBA11BA5,$9E805EBE9E98EEA7,$FAE7BD79DEA76F4C,$FA6DFD54FD2F7D1C,$0CB306580C47F5A7
    Data.q $C53C18CE0CDB0624,$DBC72F1D3C6F7135,$A54340C35D4351F1,$B99184E197619561,$0F468D46D5A33CD1
    Data.q $6DE324E35CC6698C,$21260626A3C66DC6,$529AEE4DEA4D4B26,$3B4C3BA629A6B94D,$D6CDA2CDCCCDC74C
    Data.q $E732D7313D9B3599,$60B7DF9BD79BE79B,$B8B6A8B62C5A785A,$EE59A65AE4B24965,$A559395A856EBCB6
    Data.q $9DAD46B35D5A5558,$11A7BBADBBD625AD,$D69EAB4E934EB9A7,$A9B6C9B6F1B0C367,$AEDB06D8E5B019B7
    Data.q $176267617DB66DB6,$BD93EEC3AEC5B767,$073DFD8D7DBA7D93,$1D5A1DAB0ED9870D,$3A563A1472B4737E
    Data.q $C57D3FEE9CCE9ADE,$10CF58672FE996F4,$29CB13B6E333D8CF,$6747D39B539D69C4,$8B88F38373B96717
    Data.q $2E3E972ECB824B89,$4AE4BDC8DDC61B9B,$F5D27AE15D71F574,$DBA8EDC29BB39B9D,$DC87EE69EE36EEAF
    Data.q $33599E299F34CC9F,$E551E043C8C3D073,$DF6B30959F0B3FD1,$B567814F434F7EAC,$AD57912F632F23E7
    Data.q $61F7AA77A5B7B0D7,$E39F723EF63E17EF,$59DE32DE373CE33E,$CBB7C8B7C037CC5F,$43DF855F9E6FC34F
    Data.q $D1FF7AFF64FF237F,$890367012580A700,$7AF8FB025B814181,$65DB3A3F8EBF217C,$B9A08C41EDD9B2F6
    Data.q $E582AD828F411541,$AD90ECC86821ADC1,$69CE91CE98E7F721,$07D0D6E87E50850E,$270C7EC38B61E661
    Data.q $708E3F8657858785,$77359731D11A5888,$44FA44DF7343DCD1,$394F31679BDE4496,$2EAA3E2A354A2DAF
    Data.q $3FBA34BA37DA3C6A,$9D58D5CC59662EC6,$2A2E391C4B6C4958,$EDFCDFBE6C6E36AE,$7BE30BE29DE287F3
    Data.q $A179705DC82F9817,$2EA916A785F4C2CE,$4E884C40963A2C12,$16A82A1041F09438,$0A8E257713F2258C
    Data.q $D12F2267C21DC279,$1E2A5C43D888D136,$EC927A4D2A48F24E,$A533C5247935BC91,$BC90A92784B9E52C
    Data.q $169E3A9BDD4C0D4C,$BD3A3D326D20769A,$AA42719091928331,$E667EA67B6934D21,$FEB28565ACCB7666
    Data.q $07951E2FB78B6EC5,$2D5905AC90B36BC9,$285A54E8A642B60A,$66576567B2072AD7,$9EAB9639CA89CDBF
    Data.q $90DBCAB3CCEDCD2B,$C212EDFF9FEF9C37,$574B86A5B692E112,$396AACBDE6581D2D,$15E30ADB79713CB2
    Data.q $B83CAC0656862B05,$EDAB4FD56D2AB68A,$4D7A26BD7EAE9757,$B5C182CAC15E816B,$85E50A550BEB6B01
    Data.q $584F5DEDD7DCEB7D,$9D86FA61B5DF592F,$DB14AE8A89153E1B,$78DC28D87F159717,$DC99BFCA6F871BE5
    Data.q $CF64B9C4ABA9B494,$9E2DDEE6E966D266,$0E97E697AA960E5B,$56DF0DB4DAD90D6E,$972FDB45F6F5EDB4
    Data.q $B943B683BBDB28CD,$C9A765BCB83CBFA3,$F454A4543F3BCDCE,$B5DDD2EE3654FA54,$7B1BEED16EF8D761
    Data.q $BC5BDBD5EC34F6BC,$0155DBBEC93EFDF7,$49FB65D566D54D55,$E9AA89AE3FF7B3FB,$6D4EAD5D6DFB96F8
    Data.q $07FD03D203C7ED71,$1DD5D4B9D7B60E23,$EB2BD68F52543DD2,$EF9DFEBE1FC70E47,$9C8D550D360D2D77
    Data.q $E9E479447023E2C6,$DA3A0D1EF7DF09F7,$1FD307E1AC7B8C76,$9A426A2F1D671D76,$5BFB9A539B469AF2
    Data.q $D6D13ECC4FBA5B62,$0F1FDB47FC7ADEEA,$54F34A79593C349C,$6793D382E9DA69C9,$7E7D9D959D8CCFF2
    Data.q $7BB6A2DB60DCF92E,$EF6F0F6ADFCE63E7,$8BFF45D2E17410BA,$B8F25CCE3BBC3BE7,$B85713E5DBB2F274
    Data.q $74EA6D5F3AAF9A57,$BBC74FD393FE3CEA,$B96B5CB9AE9ABB9C,$E9F7667BB5BD7AEE,$79BDF4DDCE379E1B
    Data.q $3D399ED5D6FF16F1,$F7C5F76F7AF3BDDD,$FD27727EDD16DFF5,$ADEE2777D9BBCBCE,$41ED40F45FBC4FBC
    Data.q $FE5B3FD587DD43D9,$77C06A7FDCEFD8DC,$8506F747DCD1F3A0,$430F8FF591FECF83,$860D86CB8F998F05
    Data.q $3FE239393E389EEB,$64CF43A7FCE9FD72,$CBFEA2FE179E26CF,$EBD5F87E2F1617AE,$F297A1D198D1CED7
    Data.q $EAFDA57C6DBF9397,$C6C2C6DBAF19EBC0,$F45E313378C9BE1E,$1D77DC77C1EDFB56,$207CE44F0FDFA3EF
    Data.q $53F5B1F968FF287F,$FF93931993FBA7D0,$2D3363FCF3980304,$52486320000000DB,$800000257A00004D
    Data.q $800000FFF9000083,$EA000030750000E9,$170000983A000060,$00000046C55F926F,$ACDA785441444957
    Data.q $51440840C00A31D1,$F78B08BBD2CEC441,$21091490C78D86BF,$06ABC3B7E4206E85,$5DA889DDC888AFE0
    Data.q $999AAA22266605B1,$DCCC00006E62F555,$260370CB59C09C32,$26B5ACCBB2D07B86,$006389F1F11164F0
    Data.q $E3DC70EE31276562,$444E454900000000,$00000000826042AE
    arrow_open_png_eof:
    
    arrow_close_png:
    Data.q $0A1A0A0D474E5089,$524448490D000000,$0900000011000000,$508A5B0000000208,$594870090000005B
    Data.q $0B0000130B000073,$0000189C9A000113,$6850504343694F0A,$20706F68736F746F,$666F727020434349
    Data.q $9DDA780000656C69,$F73D16E953546753,$4B9480884B42F4DE,$8B4252200815526F,$1009212A26911480
    Data.q $C15115D9A121884A,$88A0C81B04454511,$2C51158C808E8E03,$A221E407D80A8A0C,$E1FBCA8A88A3838E
    Data.q $CDE6F7BCD66BA37B,$9DF3ACE73ED7B5FE,$48960C08C007CFB3,$1E42A90C80355133,$E4E1C6C4C783E011
    Data.q $100070240A81402E,$0123FD732164B308,$C0222B3C3C7EF800,$080BD3780100BE07,$871C30C09B4DC000
    Data.q $80015C9942EA0FFF,$084B389174C00184,$A6428E7A40001480,$26989D8001464000,$63CB600004A00053
    Data.q $2760002D5000E362,$99F89D8000D3E67F,$011521945B00017B,$44886513200091A0,$8A56CFAC003B6800
    Data.q $4B66140030580045,$4930002DD80039C4,$C000B7B000486657,$000C0800B20B10CE,$7B04002985885130
    Data.q $8400782323C86000,$F13C57F246140099,$7800002AE710AE2B,$81453924B93CB299,$2E575707712D085B
    Data.q $36142B1749CE281E,$79C22E409A610261,$F3E00F3481321999,$E0111591A00000CC,$CEAE0ECE78FDF383
    Data.q $EA2D5F0EB68E36CE,$FEE3626222FF06BF,$E100004070ABCFE5,$1AB32F2CFED17E74,$25A2FE6D80063B80
    Data.q $F775A00B5E6804EE,$A000B5400FB2668B,$3C7EF870F357DAE9,$E5D9D9B990A1453C,$615B42C44AD8E4E4
    Data.q $C05FC267FE7D57CA,$F7FC3C7EF96CFD57,$5D328124E2BEE0F5,$F4CCC2E0F8044781,$62840992CF1CA54C
    Data.q $FF0BB7FC478FE6DC,$B96249C422D31DFC,$8E711251E3142A58,$8922A532F38C9A44,$64FFD225C5299242
    Data.q $35DF3E03FB2CDFE2,$2D917B013E6AB000,$10274BF603635DA8,$F20000F7E2C07458,$80030828D4C16FBB
    Data.q $3FEFFF77CFE18368,$4966800025A047FD,$2E24445E00007192,$000008C73FB3CA54,$F41B41B02A81A044
    Data.q $05C11C06C02C18C1,$42843660FC0BC1DC,$640A421042C2C424,$4282AC2960721C80,$2F602A1DB0CD8628
    Data.q $866851C0341D40D4,$0EB855C22E0E7093,$C19E0861FA0F703D,$08C841040981BC28,$8A620188DA216113
    Data.q $F8859917088E2358,$20248B120448C121,$35914B22511488C9,$485520548A523148,$5C873902723DF21D
    Data.q $823200C83B91BA46,$B281943147BC86FC,$A8B943B50CD43D51,$64D00BA246841A37,$D09BA0168F9A3174
    Data.q $E7A1368C3D1AB472,$433E8FDA0F68ABD0,$C4330718E8C030C7,$38B142C3C62E306C,$AC22B1CB6393092C
    Data.q $03AC56B01AC6AB0C,$0477B1CF63F589BB,$77043609C0458112,$4C5848411E612042,$241C20A848D84E58
    Data.q $8403093709DA1134,$B44BA8932227C251,$326218C4F911BA26,$12D6232C48588731,$C443887B102F138F
    Data.q $B927324389122437,$12D254A4B1490290,$2CE923526ED246D2,$C993231A48349BA9,$2C943907B26B64DA
    Data.q $C3E49DE485C82B20,$5BF221E41BE433E4,$53F8A47140629D0A,$E5194A6ACA5228E2,$32986506E534E510
    Data.q $A1A8DD529AA35541,$A1AD425A8F351154,$3413A88751AF52B6,$4B491683CD399A75,$17681AD395A2ADA5
    Data.q $11BA74E8AF69F768,$D257D0974E1E95DD,$F403E897E847E9CB,$88C78315860D0C77,$671807189B192867
    Data.q $19A64C98AF187719,$31373054C7198BD3,$556F990F99E798EB,$CA91157C2AB62A58,$2A1B9526954A950A
    Data.q $AADEAAA6AAA9542F,$A98F54CB55F3550B,$53335546AE7D535E,$AA55AB96D409A9E3,$A967531B53EB509D
    Data.q $546FA867AA87A83B,$590689FD597EA43F,$A051A4434FC34CC3,$630B20C6BCE35FB1,$AB0D6B212C78B319
    Data.q $CDB126C435817586,$1DFD98BB2A767CD9,$4339A1A9AA3D8BBB,$94F352B357334A33,$9CF87198E3073F66
    Data.q $F397A728E7094E74,$29E229EF14DE8A7E,$5C6531B94C34A61B,$48AB58969796AA6B,$AE36BDEB47AB51AB
    Data.q $59BB45BDA69DA7ED,$5C274AC7410E81FB,$E79D05CE8F674727,$16A70AA7DD53D953,$6BAA2EAEF53A3D4D
    Data.q $6EBF7744BBA11BA5,$9E805EBE9E98EEA7,$FAE7BD79DEA76F4C,$FA6DFD54FD2F7D1C,$0CB306580C47F5A7
    Data.q $C53C18CE0CDB0624,$DBC72F1D3C6F7135,$A54340C35D4351F1,$B99184E197619561,$0F468D46D5A33CD1
    Data.q $6DE324E35CC6698C,$21260626A3C66DC6,$529AEE4DEA4D4B26,$3B4C3BA629A6B94D,$D6CDA2CDCCCDC74C
    Data.q $E732D7313D9B3599,$60B7DF9BD79BE79B,$B8B6A8B62C5A785A,$EE59A65AE4B24965,$A559395A856EBCB6
    Data.q $9DAD46B35D5A5558,$11A7BBADBBD625AD,$D69EAB4E934EB9A7,$A9B6C9B6F1B0C367,$AEDB06D8E5B019B7
    Data.q $176267617DB66DB6,$BD93EEC3AEC5B767,$073DFD8D7DBA7D93,$1D5A1DAB0ED9870D,$3A563A1472B4737E
    Data.q $C57D3FEE9CCE9ADE,$10CF58672FE996F4,$29CB13B6E333D8CF,$6747D39B539D69C4,$8B88F38373B96717
    Data.q $2E3E972ECB824B89,$4AE4BDC8DDC61B9B,$F5D27AE15D71F574,$DBA8EDC29BB39B9D,$DC87EE69EE36EEAF
    Data.q $33599E299F34CC9F,$E551E043C8C3D073,$DF6B30959F0B3FD1,$B567814F434F7EAC,$AD57912F632F23E7
    Data.q $61F7AA77A5B7B0D7,$E39F723EF63E17EF,$59DE32DE373CE33E,$CBB7C8B7C037CC5F,$43DF855F9E6FC34F
    Data.q $D1FF7AFF64FF237F,$890367012580A700,$7AF8FB025B814181,$65DB3A3F8EBF217C,$B9A08C41EDD9B2F6
    Data.q $E582AD828F411541,$AD90ECC86821ADC1,$69CE91CE98E7F721,$07D0D6E87E50850E,$270C7EC38B61E661
    Data.q $708E3F8657858785,$77359731D11A5888,$44FA44DF7343DCD1,$394F31679BDE4496,$2EAA3E2A354A2DAF
    Data.q $3FBA34BA37DA3C6A,$9D58D5CC59662EC6,$2A2E391C4B6C4958,$EDFCDFBE6C6E36AE,$7BE30BE29DE287F3
    Data.q $A179705DC82F9817,$2EA916A785F4C2CE,$4E884C40963A2C12,$16A82A1041F09438,$0A8E257713F2258C
    Data.q $D12F2267C21DC279,$1E2A5C43D888D136,$EC927A4D2A48F24E,$A533C5247935BC91,$BC90A92784B9E52C
    Data.q $169E3A9BDD4C0D4C,$BD3A3D326D20769A,$AA42719091928331,$E667EA67B6934D21,$FEB28565ACCB7666
    Data.q $07951E2FB78B6EC5,$2D5905AC90B36BC9,$285A54E8A642B60A,$66576567B2072AD7,$9EAB9639CA89CDBF
    Data.q $90DBCAB3CCEDCD2B,$C212EDFF9FEF9C37,$574B86A5B692E112,$396AACBDE6581D2D,$15E30ADB79713CB2
    Data.q $B83CAC0656862B05,$EDAB4FD56D2AB68A,$4D7A26BD7EAE9757,$B5C182CAC15E816B,$85E50A550BEB6B01
    Data.q $584F5DEDD7DCEB7D,$9D86FA61B5DF592F,$DB14AE8A89153E1B,$78DC28D87F159717,$DC99BFCA6F871BE5
    Data.q $CF64B9C4ABA9B494,$9E2DDEE6E966D266,$0E97E697AA960E5B,$56DF0DB4DAD90D6E,$972FDB45F6F5EDB4
    Data.q $B943B683BBDB28CD,$C9A765BCB83CBFA3,$F454A4543F3BCDCE,$B5DDD2EE3654FA54,$7B1BEED16EF8D761
    Data.q $BC5BDBD5EC34F6BC,$0155DBBEC93EFDF7,$49FB65D566D54D55,$E9AA89AE3FF7B3FB,$6D4EAD5D6DFB96F8
    Data.q $07FD03D203C7ED71,$1DD5D4B9D7B60E23,$EB2BD68F52543DD2,$EF9DFEBE1FC70E47,$9C8D550D360D2D77
    Data.q $E9E479447023E2C6,$DA3A0D1EF7DF09F7,$1FD307E1AC7B8C76,$9A426A2F1D671D76,$5BFB9A539B469AF2
    Data.q $D6D13ECC4FBA5B62,$0F1FDB47FC7ADEEA,$54F34A79593C349C,$6793D382E9DA69C9,$7E7D9D959D8CCFF2
    Data.q $7BB6A2DB60DCF92E,$EF6F0F6ADFCE63E7,$8BFF45D2E17410BA,$B8F25CCE3BBC3BE7,$B85713E5DBB2F274
    Data.q $74EA6D5F3AAF9A57,$BBC74FD393FE3CEA,$B96B5CB9AE9ABB9C,$E9F7667BB5BD7AEE,$79BDF4DDCE379E1B
    Data.q $3D399ED5D6FF16F1,$F7C5F76F7AF3BDDD,$FD27727EDD16DFF5,$ADEE2777D9BBCBCE,$41ED40F45FBC4FBC
    Data.q $FE5B3FD587DD43D9,$77C06A7FDCEFD8DC,$8506F747DCD1F3A0,$430F8FF591FECF83,$860D86CB8F998F05
    Data.q $3FE239393E389EEB,$64CF43A7FCE9FD72,$CBFEA2FE179E26CF,$EBD5F87E2F1617AE,$F297A1D198D1CED7
    Data.q $EAFDA57C6DBF9397,$C6C2C6DBAF19EBC0,$F45E313378C9BE1E,$1D77DC77C1EDFB56,$207CE44F0FDFA3EF
    Data.q $53F5B1F968FF287F,$FF93931993FBA7D0,$2D3363FCF3980304,$52486320000000DB,$800000257A00004D
    Data.q $800000FFF9000083,$EA000030750000E9,$170000983A000060,$00000046C55F926F,$62DA785441444923
    Data.q $4893399CCC1B2060,$8DB7E036F6801A92,$0000000036CA8096,$B11C53850003FFFF,$0000000091944A55
    Data.q $826042AE444E4549
    arrow_close_png_eof:
  EndDataSection
  
  
EndProcedure
Procedure Bar_Top_Erstellen()
  
ContainerGadget(#Container_Top, 0, 0, 1024,68)
Bar_Top_Zeichnen()

ImageGadget(#ImageGadget_Bar_Top,0,0,1024,86,ImageID(#GFX_Bar_Top))
DisableGadget(#ImageGadget_Bar_Top,1)

CanvasGadget(#Container_Top_Canvas_Arrow,GadgetWidth(#Container_Top)/2-8,52,17,9) 

Bar_Top_ArrowButton_State()

CloseGadgetList()
  
EndProcedure

Procedure Bar_Update()
  Bar_Top_Resize()
  Bar_Top_Zeichnen()
  
EndProcedure

OpenWindow(#Fenster_Regiezentrum,0,0,1024,768,"Red||Walled Framework System- Regiezentrum",#PB_Window_ScreenCentered|#PB_Window_SystemMenu|#PB_Window_MinimizeGadget|#PB_Window_MaximizeGadget|#PB_Window_SizeGadget)
WindowBounds(#Fenster_Regiezentrum, 1024, 768,  #PB_Ignore ,  #PB_Ignore) 
SetWindowColor(#Fenster_Regiezentrum,RGB(76,76,76))
SmartWindowRefresh(#Fenster_Regiezentrum, 1) 


Bar_Top_Erstellen()



Repeat
  
  Fenster_Event=WaitWindowEvent(20)  
  
  Select Fenster_Event
      
    Case #PB_Event_Gadget
      Select EventGadget()
          
        Case #Container_Top_Canvas_Arrow
          Select EventType()
              
            Case #PB_EventType_LeftClick  
              Select Bar_Top_State.s
                Case "close"
                  Bar_Top_State.s="open"
                  Bar_Top_ArrowButton_State()
                  Bar_Update()
                                    
                Case "open"
                  Bar_Top_State.s="close"
                  Bar_Top_ArrowButton_State()
                  Bar_Update()
                                    
              EndSelect
                EndSelect 
              EndSelect
            Case #PB_Event_SizeWindow 
              Bar_Update()
              
            Case #PB_Event_MinimizeWindow 
              Bar_Update()
                            
            Case #PB_Event_MaximizeWindow 
              Bar_Update()
              
            Case #PB_Event_RestoreWindow  
             Bar_Update()
  EndSelect
  
Until Fenster_Event = #PB_Event_CloseWindow

End

PB 4.6 / 32 Bit / 64 Bit
smateja
Beiträge: 250
Registriert: 25.11.2004 19:51
Computerausstattung: Alienware Aurora / Intel Core i7 CPU @ 2.8 GHz / 64 Bit OS

Re: Mithilfe / Codeoptimierung

Beitrag von smateja »

Nachtrag: Dank BISONTE aus dem Forum kann das erstmal geschlossen werden :) - bekomme gerade 1A Nachhilfe via Teamspeak etc.

THX trotzdem an alle die sich hier evtl. verkopft haben. Werde zudem dann eine bessere Version dann online stellen für alle die aus so einem Code lernen möchten.
PB 4.6 / 32 Bit / 64 Bit
Antworten