Brauche hilfe bei GadgetColumn und zu dessen width

Für allgemeine Fragen zur Programmierung mit PureBasic.
Szandor
Beiträge: 24
Registriert: 27.01.2005 17:09

Brauche hilfe bei GadgetColumn und zu dessen width

Beitrag von Szandor »

Hallo liebe PBler!

Ich bin ein alter PB User der nach laanger Zeit endlich wieder zurück gefunden hat.
Nun habe ich gestern einfach mal angefangen eine kleine CD/DVD Datenbank zu basteln mit der man ganz einfach ohne viel haben zu müssen seine CDs katalogiseren kann... Die meisten Tools sind einfach zu unpraktisch... Datenbanken zu umständlich um einfach auf die schnelle was einzu tragen...

Das Projekt ist natürlich Freeware, aber so lange es nicht KOMPLETT ist will ich es ungerne schon hier im Forum verteilen :).

Leider habe ich aber ein Problem.

Das Programm liest und schreibt Konfigurationsdateien. Nun möchte ich auch das es sich die SPALTENBREITE merkt. Aber ich habe leider bisher keinen Weg gefunden die Breite eines GadgetColumns auszulesen. Das bräuchte ich aber damit ich ganz einfach beim starten die Grösse wieder ausliest und alles wieder so anpasst... Bei den restlichen Gadgets klappt das ganz gut.
Nur wie es scheint gibt es keinen internen PM Befehl dazu :(.

Aber ist ja auch kein Problem, es gibt ja auch APIs :) wäre es möglich mit einem Api auf das zuzugreifen?

Schon mal danke im vorraus für jede Hilfe, Szandor
Benutzeravatar
ChaOsKid
Beiträge: 66
Registriert: 29.08.2004 15:07
Wohnort: Oktoberfest

Beitrag von ChaOsKid »

hi Szandor,

auf purearea.net gibt es eine MoreListIconGadget User-Lib,
die enthält einen GetColumnWidth(#Gadget, Column) befehl,
das dürfte genau das sein was du suchst :)

mfG
Tobi
Szandor
Beiträge: 24
Registriert: 27.01.2005 17:09

Beitrag von Szandor »

ChaOsKid hat geschrieben:hi Szandor,

auf purearea.net gibt es eine MoreListIconGadget lib
da drin gibt es einen GetColumnWidth(#Gadget, Column) befehl
das dürfte genau das sein was du suchst :)

mfG
Tobi
Hi Tobi,

Danke für deine schnelle Antwort :o
Werde mich gleich mal dorthin vorschlagen :) - klingt aber GENAU DANACH was ich will *g*.

Szandor
Benutzeravatar
ChaOsKid
Beiträge: 66
Registriert: 29.08.2004 15:07
Wohnort: Oktoberfest

Beitrag von ChaOsKid »

eine alternative API lösung wäre
-spaltenbreite setzen:

Code: Alles auswählen

SendMessage_(GadgetID(#gadget), #LVM_SETCOLUMNWIDTH, column, breite)
-spaltenbreite auslesen:

Code: Alles auswählen

breite = SendMessage_(GadgetID(#gadget), #LVM_GETCOLUMNWIDTH, column, 0)
Szandor
Beiträge: 24
Registriert: 27.01.2005 17:09

Beitrag von Szandor »

ChaOsKid hat geschrieben:eine alternative API lösung wäre
-spaltenbreite setzen:

Code: Alles auswählen

SendMessage_(GadgetID(#gadget), #LVM_SETCOLUMNWIDTH, column, breite)
-spaltenbreite auslesen:

Code: Alles auswählen

breite = SendMessage_(GadgetID(#gadget), #LVM_GETCOLUMNWIDTH, column, 0)
Danke für den Tipp :) APIs... wusste ichs doch *g*... Danke!

funktioniert jetzt aber schon bestens... Konfigurations Datei ist eigentlich fertig, auch sonst ist schon fast alles drin... :mrgreen:
Wirklich krass wie schnell sowas mit PB geht :)

Mal sehen, vielleicht bau ich es ja für eine allgemeine Mini DB um :)... also anstatt der 4 fixen spalten, das man die selbst festlegen kann... dazu muss aber das suchen usw noch implementiert werden... (kein bubble sort *g*)

Würde ja gerne die mini CD/DVD DB uppen, aber irgendwie hat mein ISP irgendwas verhaut, kann auf keine FTP Server mehr connecten... Naja, sobald ich kann uppe ichs und stelle den link hier rein. :allright:
Feudel
Beiträge: 13
Registriert: 21.12.2004 23:06

... abhängig vom Fenster

Beitrag von Feudel »

ich bin mehr für pragmatische Lösungen. Da die ganze Geschichte einfach sein soll, die Spaltenbreiten abhängig von der Fenstergröße erstellen. Dann die Abmessungen (und evtl. die Position) des Fensters in einer .ini ablegen.
... hmmm
Szandor
Beiträge: 24
Registriert: 27.01.2005 17:09

Re: ... abhängig vom Fenster

Beitrag von Szandor »

Feudel hat geschrieben:ich bin mehr für pragmatische Lösungen. Da die ganze Geschichte einfach sein soll, die Spaltenbreiten abhängig von der Fenstergröße erstellen. Dann die Abmessungen (und evtl. die Position) des Fensters in einer .ini ablegen.
Die Abmessungen werden schon in der INI abgelegt nur die spaltenbreiten waren noch sehr variabel. Aber an die Idee mit den spalten die sich auf die fensterbreite anpassen dachte ich auch schon... da wir schon zu 2. den gedanken haben, werde ich es einfach mal einbauen *setzt es auf die todo list*...

Danke für deine Hilfe :allright:
Szandor
Beiträge: 24
Registriert: 27.01.2005 17:09

Beitrag von Szandor »

Ok, habe jetzt ein neues Problem!

Ich suche in einem ListIconViewGadget und mit setgadgetstate soll er dann dort hinspringen im ListView... Er markiert es zwar, aber scrollt nicht hin :(

Code: Alles auswählen

search.l = listsearch(#List, 1, GetGadgetText(#STRsuchbegriff), 0, CountGadgetItems(#List), 0)
If search = -1
  messagebox_(WindowID(), "Konnte keinen passenden Eintrag dazu finden", "Not found", #mb_ok|#MB_ICONINFORMATION)
Else
  SetGadgetState(#List, search)
EndIf
Weiss jemand wie ich das so hinbekomme, das er es nicht nur markiert sondern auch runterscrollt zu dem gefundenen eintrag?

Danke schonmal im vorraus, Szandor
Benutzeravatar
Donald
Beiträge: 307
Registriert: 03.01.2005 02:21
Wohnort: Marl

Re: Brauche hilfe bei GadgetColumn und zu dessen width

Beitrag von Donald »

Szandor hat geschrieben:Hallo liebe PBler!

Ich bin ein alter PB User der nach laanger Zeit endlich wieder zurück gefunden hat.
Nun habe ich gestern einfach mal angefangen eine kleine CD/DVD Datenbank zu basteln mit der man ganz einfach ohne viel haben zu müssen seine CDs katalogiseren kann... Die meisten Tools sind einfach zu unpraktisch... Datenbanken zu umständlich um einfach auf die schnelle was einzu tragen...
Hi, genau aus diesen Gründen habe ich mir ebenfalls ein eigenes
Verwaltungsprogramm für CD - DVD - VIDEO programmiert.
Allerdings damals noch in GFA.
Na mal sehen ob ich es irgendwann mal in PB umsetzte.
DONALD :D www.PureBasic-Donald.de gibt es im Moment nicht mehr
PureBasic - jaPBe - PureVisonXP - TailBite
Benutzeravatar
ChaOsKid
Beiträge: 66
Registriert: 29.08.2004 15:07
Wohnort: Oktoberfest

Beitrag von ChaOsKid »

Code: Alles auswählen

SendMessage_(GadgetID(#List), #LVM_ENSUREVISIBLE, search, 0)
mfG
Tobi
Antworten