Inhalt von PanelGadgetItems resizen?

Anfängerfragen zum Programmieren mit PureBasic.
MikeHart
Beiträge: 14
Registriert: 05.09.2017 12:19
Wohnort: Leverkusen

Inhalt von PanelGadgetItems resizen?

Beitrag von MikeHart »

Hallo zusammen,

aktuell verwende ich ein Panelgadget welches eine variable Anzahl von Items enthält, welchen jeweils ein Scintillagadget zugeordnet ist.
Bei der Größenänderung mache ich einen Resize auf das Panelgadget. Nun muss ich aber auch die in den Items enthaltenen Scintilla Gadgets bzgl. deren Größe anpassen.
Z.Zt speichere ich die ID des Scintillagadget in den Item Data ab um sie dann für die Größenanpassung zu verwenden. Klappt. Bei einem Gadget kein Problem. Würde die ID aber gerne zur Laufzeit ermitteln. Also meine Frage...

Kann man Gadgets in den PanelGadgetItems zur Laufzeit ermitteln und entsprechend resizen? Ich habe es mit 2 GetGadgetItemID aufrufen versucht. Erst um das Item zu ermitteln und im Item das erste Gadget. Bekomme aber immer nur 0 zurück. bzw PB crashed:

Code: Alles auswählen

  itemCount = CountGadgetItems(Panel_Code)-1
  For itemIndex = 0 To itemCount
    itemID = GetGadgetItemData(Panel_Code, itemIndex)    ; Wird 0 zurückgegeben
    scintillaGadgetID = GadgetItemID(itemID, 0)   ; Hier crashed es schon
    ResizeGadget(scintillaGadgetID , #PB_Ignore, #PB_Ignore,  GetGadgetAttribute(Panel_Code,#PB_Panel_ItemWidth), GetGadgetAttribute(Panel_Code,#PB_Panel_ItemHeight))
  Next
Gruß
Michael
GPI
Beiträge: 1511
Registriert: 29.08.2004 13:18
Kontaktdaten:

Re: Inhalt von PanelGadgetItems resizen?

Beitrag von GPI »

https://www.purebasic.com/german/docume ... mdata.html
mit diesen Befehl kannst du einen Wert setzen und in Panel speichern. Den Wert musst du vorher aber abspeichern.
Wenn du nur ein Gadget in allen panels drin hast, dann kannst du hier natürlich dein Handle von Gadget abspeichern und später abrufen.
CodeArchiv Rebirth: Deutsches Forum Github Hilfe ist immer gern gesehen!
MikeHart
Beiträge: 14
Registriert: 05.09.2017 12:19
Wohnort: Leverkusen

Re: Inhalt von PanelGadgetItems resizen?

Beitrag von MikeHart »

Danke. So mache ich das zur Zeit auch. Aber wozu ist dann GetGadgetItemId da? Mūsste dieser Befehl mir das nicht auch bringen?
GPI
Beiträge: 1511
Registriert: 29.08.2004 13:18
Kontaktdaten:

Re: Inhalt von PanelGadgetItems resizen?

Beitrag von GPI »

Keine Ahnung, den Befehl gibt es eigentlich gar nicht:
https://www.purebasic.com/documentation ... index.html
CodeArchiv Rebirth: Deutsches Forum Github Hilfe ist immer gern gesehen!
MikeHart
Beiträge: 14
Registriert: 05.09.2017 12:19
Wohnort: Leverkusen

Re: Inhalt von PanelGadgetItems resizen?

Beitrag von MikeHart »

GPI hat geschrieben:Keine Ahnung, den Befehl gibt es eigentlich gar nicht:
https://www.purebasic.com/documentation ... index.html
Sorry, meinte GadgetItemID.

https://www.purebasic.com/documentation ... temid.html
MikeHart
Beiträge: 14
Registriert: 05.09.2017 12:19
Wohnort: Leverkusen

Re: Inhalt von PanelGadgetItems resizen?

Beitrag von MikeHart »

Wer lesen kann, kann verstehen :oops: Der funktioniert nur beim TreeGadget. Also scheint beim Panelgadget nur der Weg über die Itemdata und dort den Handle von einem enthaltenen Gadget abzulegen, oder wenn es mehrere sind, dort eine Liste oder ähnliches abzulegen.

Case closed :D
Benutzeravatar
Kiffi
Beiträge: 10621
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: Inhalt von PanelGadgetItems resizen?

Beitrag von Kiffi »

@MikeHart: es gibt hier im Forum ein bis mehrere Code-Snippets, die das automatische Resizen von Gadgets anbieten. Du stellst nur initial top-, left-, right- und bottom-Eigenschaften ein und brauchst Dich dann nicht mehr um das resizen kümmern. Finde momentan auf die Schnelle nix, aber vielleicht weiß der ein oder andere Forianer, was ich meine.

Grüße ... Peter
Hygge
Benutzeravatar
Bisonte
Beiträge: 2429
Registriert: 01.04.2007 20:18

Re: Inhalt von PanelGadgetItems resizen?

Beitrag von Bisonte »

Kiffi hat geschrieben:aber vielleicht weiß der ein oder andere Forianer, was ich meine.
Ja so ist es ;)

z.B. : http://www.purebasic.fr/german/viewtopi ... 10#p320810

Es gibt auch noch andere Sources... aber der fiel mir auf die schnelle ein :mrgreen:
PureBasic 6.10 LTS (Windows x86/x64) | Windows10 Pro x64 | Asus TUF X570 Gaming Plus | R9 5900X | 64GB RAM | GeForce RTX 3080 TI iChill X4 | HAF XF Evo | build by vannicom​​
MikeHart
Beiträge: 14
Registriert: 05.09.2017 12:19
Wohnort: Leverkusen

Re: Inhalt von PanelGadgetItems resizen?

Beitrag von MikeHart »

Danke, der Link ist eine kleine Goldgrube! :D
Benutzeravatar
Bisonte
Beiträge: 2429
Registriert: 01.04.2007 20:18

Re: Inhalt von PanelGadgetItems resizen?

Beitrag von Bisonte »

Ja... Dieses Forum hat viele versteckte Schätze :allright:
PureBasic 6.10 LTS (Windows x86/x64) | Windows10 Pro x64 | Asus TUF X570 Gaming Plus | R9 5900X | 64GB RAM | GeForce RTX 3080 TI iChill X4 | HAF XF Evo | build by vannicom​​
Antworten