Tabelle

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8807
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken

Re: Tabelle

Beitrag von NicTheQuick »

Das klingt so als ob Unicode-Strings wie Ascii interpretiert werden. Dann hört es nämlich in der Tat nach dem ersten Zeichen auf.
Aber das ist nur eine Idee. Ich kenne die Bibliothek nicht und habe auch kein Windows um das zu testen.
Benutzeravatar
PIC18F2550
Beiträge: 104
Registriert: 29.04.2024 09:10
Computerausstattung: Server HP Proliant G7
PC AMD FX(tm)-9590, 64Gb Ram, 2x 2TB Raid5 SAS

Tabelle

Beitrag von PIC18F2550 »

Hallo Marcos,
hab mir gerade die Doku mir geholt.
Sieht alles gut aus.

Danke
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Benutzeravatar
H.Brill
Beiträge: 496
Registriert: 15.10.2004 17:42
Wohnort: 66557 Neunkirchen

Re: Tabelle

Beitrag von H.Brill »

Ist schon einige Jahre her, als ich die LISTVIEW.DLL mit PB getestet hatte.
Da scheint sich irgend etwas bei PB intern geändert zu haben.
Muß ich mal schauen. Am besten nehme ich ein Stück Memory,
in das ich die Strings kopiere und es übergebe.

Sorry für den nicht laufenden Code.
PB 6.10
Benutzeravatar
PIC18F2550
Beiträge: 104
Registriert: 29.04.2024 09:10
Computerausstattung: Server HP Proliant G7
PC AMD FX(tm)-9590, 64Gb Ram, 2x 2TB Raid5 SAS

Re: Tabelle

Beitrag von PIC18F2550 »

Kein Problem das ist vollkommen Normal.
Dann gibt es schonmal einen Test unter W10 mit PB in 32Bit. :mrgreen:
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Benutzeravatar
mk-soft
Beiträge: 3845
Registriert: 24.11.2004 13:12
Wohnort: Germany

Re: Tabelle

Beitrag von mk-soft »

Statt mit DLL gibt es auch sehr gute PB-Codes für GridGadgets.

Link: https://www.purebasic.fr/english/viewto ... 94#p601094
oder suchen mit https://www.purebasic.fr/english/search ... gridgadget
Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
Benutzeravatar
H.Brill
Beiträge: 496
Registriert: 15.10.2004 17:42
Wohnort: 66557 Neunkirchen

Re: Tabelle

Beitrag von H.Brill »

Dann machen wir doch mal was einfaches :

Code: Alles auswählen

If OpenWindow(0, 100, 100, 600, 300, "Mein Grid", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
   ButtonGadget(1, 10, 10, 60, 25, "Fülle")
   ListIconGadget(2, 5, 80, 400, 200, "Uhrzeit", 100, #PB_ListIcon_FullRowSelect | #PB_ListIcon_AlwaysShowSelection | #PB_ListIcon_GridLines) ; erste Spalte wird schon beim Erstellen des Gridgadget erstelllt.
   AddGadgetColumn(2, 1, "Drehzahl", 150)
   AddGadgetColumn(2, 2, "Watt", 200)
  
   Repeat
     Event = WaitWindowEvent()
     If Event = #PB_Event_Gadget
        Select EventGadget()
              Case 1 
               ; Button gedrückt
               uhrzeit.s = FormatDate("%hh:%ii:%ss", Date())
               drehzahl.s = Str(Random(8000, 2000))
               watt.s = Str(Random(1000, 0))
               AddGadgetItem(2, -1, uhrzeit + Chr(10) + drehzahl + Chr(10) + watt)
               SetGadgetItemState(2, CountGadgetItems(2)- 1 ,#PB_ListIcon_Selected)
       EndSelect
     EndIf  
   Until Event = #PB_Event_CloseWindow
 EndIf
 
Drehzahl und Watt könnten z.b. von irgendwelchen Sensoren kommen oder in einer Datei
gespeichert sein. Soll jetzt nur mal was logisches sein.
PB 6.10
Benutzeravatar
PIC18F2550
Beiträge: 104
Registriert: 29.04.2024 09:10
Computerausstattung: Server HP Proliant G7
PC AMD FX(tm)-9590, 64Gb Ram, 2x 2TB Raid5 SAS

Re: Tabelle

Beitrag von PIC18F2550 »

Ich binn gerade am PB.Ex_GridGadget und überlege wie ich da einen Event erhalten kann.
Ich habe in der Doku nichts dazu gefunden.
Ich brauche die Zeile und Spalte die angeklickt wurden.

Danke
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Benutzeravatar
PIC18F2550
Beiträge: 104
Registriert: 29.04.2024 09:10
Computerausstattung: Server HP Proliant G7
PC AMD FX(tm)-9590, 64Gb Ram, 2x 2TB Raid5 SAS

Re: Tabelle

Beitrag von PIC18F2550 »

Es gibt wohl keine möglichkeit einen Event mit B.Ex GridGadget zu erzeugen das ist schade.
Eine Abfrage im Polling mit Zeile = GetGridGadgetState(#Grid, @ErrorOutput$) sehe ich nicht als zielführend.
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Benutzeravatar
PIC18F2550
Beiträge: 104
Registriert: 29.04.2024 09:10
Computerausstattung: Server HP Proliant G7
PC AMD FX(tm)-9590, 64Gb Ram, 2x 2TB Raid5 SAS

Re: Tabelle

Beitrag von PIC18F2550 »

H.Brill hat geschrieben: 25.05.2024 14:23 Dann machen wir doch mal was einfaches :

Code: Alles auswählen

If OpenWindow(0, 100, 100, 600, 300, "Mein Grid", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
   ButtonGadget(1, 10, 10, 60, 25, "Fülle")
   ListIconGadget(2, 5, 80, 400, 200, "Uhrzeit", 100, #PB_ListIcon_FullRowSelect | #PB_ListIcon_AlwaysShowSelection | #PB_ListIcon_GridLines) ; erste Spalte wird schon beim Erstellen des Gridgadget erstelllt.
   AddGadgetColumn(2, 1, "Drehzahl", 150)
   AddGadgetColumn(2, 2, "Watt", 200)
  
   Repeat
     Event = WaitWindowEvent()
     If Event = #PB_Event_Gadget
        Select EventGadget()
              Case 1 
               ; Button gedrückt
               uhrzeit.s = FormatDate("%hh:%ii:%ss", Date())
               drehzahl.s = Str(Random(8000, 2000))
               watt.s = Str(Random(1000, 0))
               AddGadgetItem(2, -1, uhrzeit + Chr(10) + drehzahl + Chr(10) + watt)
               SetGadgetItemState(2, CountGadgetItems(2)- 1 ,#PB_ListIcon_Selected)
       EndSelect
     EndIf  
   Until Event = #PB_Event_CloseWindow
 EndIf
 
Drehzahl und Watt könnten z.b. von irgendwelchen Sensoren kommen oder in einer Datei
gespeichert sein. Soll jetzt nur mal was logisches sein.
Zwischen spaltenüberschrift und 1. Datenzeile fehlt die Linie, das irritiert etwas.
Ich wollte die Kopfspalte in einer anderen Farbe etwas abheben, dafür scheint es auch keine funktion zu geben.

Ich hoffe das ich mich die Letzten zwei tage einfach nur zu blöd angestellt habe. :cry:
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
Antworten