Einzelne Panels aus einem PanelGadget entfernen.

Anfängerfragen zum Programmieren mit PureBasic.
ThoPie
Beiträge: 130
Registriert: 19.05.2006 15:18
Kontaktdaten:

Einzelne Panels aus einem PanelGadget entfernen.

Beitrag von ThoPie »

Hallo,
ich würde gern je nach Bedarf einzelne Panel aus einem PanelGadget ausblenden. Geht so etwas?
ThoPie
Benutzeravatar
bobobo
jaAdmin
Beiträge: 3873
Registriert: 13.09.2004 17:48
Kontaktdaten:

Beitrag von bobobo »

Code: Alles auswählen

; PureBasic Visual Designer v3.95 build 1485 (PB4Code)
Enumeration
  #Window_0
EndEnumeration
Enumeration
  #Panel_0
  #Button_0
  #Button_1
EndEnumeration
Procedure Open_Window_0()
  If OpenWindow(#Window_0, 216, 0, 600, 300, "New window ( 0 )",  #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar )
    If CreateGadgetList(WindowID(#Window_0))
      ButtonGadget(#Button_0, 380, 20, 140, 40, "hin")
      ButtonGadget(#Button_1, 380, 60, 140, 40, "wech")
      ;- Panel0
      PanelGadget(#Panel_0, 50, 30, 250, 140)
      AddGadgetItem(#Panel_0, -1, "Tab 1")
      AddGadgetItem(#Panel_0, -1, "Tab 2")
      AddGadgetItem(#Panel_0, -1, "Tab 3")
      AddGadgetItem(#Panel_0, -1, "Tab 4")
      CloseGadgetList()
    EndIf
  EndIf
EndProcedure
Open_Window_0()
i=CountGadgetItems(#Panel_0)-1 
Repeat
  Event = WaitWindowEvent()
  WindowID = EventWindow()
  GadgetID = EventGadget()
  EventType = EventType()
  If Event = #PB_Event_Gadget
    If GadgetID = #Panel_0
    ElseIf GadgetID = #Button_1
      RemoveGadgetItem(#Panel_0, i)
      i-1
    ElseIf GadgetID = #Button_0
      AddGadgetItem(#Panel_0, -1,"Tab "+Str(i+2))
      i+1
    EndIf
  EndIf
Until Event = #PB_Event_CloseWindow
End
Ansonsten .. Hilfe lesen macht kluch !
‮pb aktuel 6.2 windoof aktuell und sowas von 10
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
Benutzeravatar
PureLust
Beiträge: 1145
Registriert: 21.07.2005 00:02
Computerausstattung: Hab aktuell im Grunde nur noch 'nen Lenovo Yoga 2 Pro im Einsatz.
Wohnort: am schönen Niederrhein

Beitrag von PureLust »

@bo³:

ich schätze mal, er wollte wissen wie er aus einem PanelGadget mit z.B. 5 existierenden Panels eins der Panel (z.B. das 2te) ausblenden kann.
[Dynamic-Dialogs] - komplexe dynamische GUIs einfach erstellen
[DeFlicker] - Fenster flimmerfrei resizen
[WinFX] - Window Effekte (inkl. 'durchklickbares' Window)
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Man kann das Panel disablen (nicht anwählbar)
http://www.purebasic.fr/english/viewtop ... anelgadget
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
bobobo
jaAdmin
Beiträge: 3873
Registriert: 13.09.2004 17:48
Kontaktdaten:

Beitrag von bobobo »

PureLust hat geschrieben:@bo³:

ich schätze mal, er wollte wissen wie er aus einem PanelGadget mit z.B. 5 existierenden Panels eins der Panel (z.B. das 2te) ausblenden kann.
und ? soll er doch das zweite ausblenden ..das hat ne Nummer und ist ansprechbar so wie im Code oben
‮pb aktuel 6.2 windoof aktuell und sowas von 10
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
Benutzeravatar
Xaby
Beiträge: 2144
Registriert: 12.11.2005 11:29
Wohnort: Berlin + Zehdenick
Kontaktdaten:

Beitrag von Xaby »

Aus der PB-Hilfe
RemoveGadgetItem(): entfernt eine Schaltfläche
Der englische Code ist etwas unsinnig, es ist zwar ein TAB ausgeblendet, aber man kann ohne Maus nicht mehr weiterschalten.
Das ist ungünstig. Dann lieber den Tab nicht anschalten oder?


Aber kann mir einer von euch sagen, wie ich gleichberechtigte PANEL-TABs unter einander bekomme?

Das sieht man ja oft. Ne Reihe TABs oben und daunter eine. Und alle sind in der selben Ebene.

Geht das ohne Weiteres? Als Beispiel: Im jaPBe rechts, wenn man die Panels zusammen schiebt, gehen sie übereinander.

:roll:
Kinder an die Macht http://scratch.mit.edu/
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Beitrag von edel »

Beispiel :

Code: Alles auswählen

hwnd = OpenWindow(0,0,0,300,300,"leer")

CreateGadgetList(hwnd)
hTC = PanelGadget(0,0,0,300,300)

style = GetWindowLong_(hTC,#GWL_STYLE)
SetWindowLong_(hTC,#GWL_STYLE,style|#TCS_MULTILINE)


For i = 0 To 10
  AddGadgetItem(0,-1,"")
Next

Repeat : Until WaitWindowEvent() = 16
Benutzeravatar
Xaby
Beiträge: 2144
Registriert: 12.11.2005 11:29
Wohnort: Berlin + Zehdenick
Kontaktdaten:

Beitrag von Xaby »

Bin beeindruckt ...

Wie ihr das immer nur macht. Wo findet ihr immer die Lösungen?
Träumt ihr nachts davon und ihr habt Visionen ...

:allright: :allright: :allright: :allright:
Kinder an die Macht http://scratch.mit.edu/
Antworten