Hallo zusammen,
ich hab mal wieder ein kleines Problem und bin sicher Ihr wisst die Lösung.
Wenn ich mit dem Befehl SetGadgetItemText einen Text überschreibe in einem ListIconGadget und dieser ist kürzer als der vorhanden - so bleiben "Reste" des vorherigen Textes übrig.
Hat evtl. jemand eine Idee wie man das so lösen kann dass immer die ganze Zeile überschrieben wird - quasi keine Reste wenn der neue Text kürzer ist - stehen bleiben? Irgendwie einen +(CHR irgendwas anfügen oder special Befehl den ich überlesen/sehen habe? API Lösung?
THX für alle Ideen und Vorschläge.
LG
SetGadgetItemText bei ListIconGadget - Inhalt überschreiben
-
- Beiträge: 250
- Registriert: 25.11.2004 19:51
- Computerausstattung: Alienware Aurora / Intel Core i7 CPU @ 2.8 GHz / 64 Bit OS
SetGadgetItemText bei ListIconGadget - Inhalt überschreiben
PB 4.6 / 32 Bit / 64 Bit
Re: SetGadgetItemText bei ListIconGadget - Inhalt überschrei
Blöde Frage, aber wieso nicht vorher einen Leerstring schreiben ?
PureBasic 6.21 (Windows x86/x64) | Windows11 Pro x64 | AsRock B850 Steel Legend Wifi | R7 9800x3D | 64GB RAM | GeForce RTX 5080 | ThermaltakeView 270 TG ARGB | build by vannicom
- 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
Re: SetGadgetItemText bei ListIconGadget - Inhalt überschrei
Ich schlage vor, nächstesmal einen Beispielcode zu posten
Ich kann den Fehler nämlich nicht nachvollziehen.

Code: Alles auswählen
If OpenWindow(0, 100, 100, 300, 100, "ListIcon Example", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
ListIconGadget(0, 5, 5, 290, 90, "Name", 100, #PB_ListIcon_FullRowSelect|#PB_ListIcon_AlwaysShowSelection)
AddGadgetColumn(0, 1, "Address", 250)
AddGadgetItem(0, -1, "Harry Rannit"+Chr(10)+"12 Parliament Way, Battle Street, By the Bay")
AddGadgetItem(0, -1, "Ginger Brokeit"+Chr(10)+"130 PureBasic Road, BigTown, CodeCity")
SetGadgetItemText(0, 1, "Gin", 0)
Repeat
Event = WaitWindowEvent()
Until Event = #PB_Event_CloseWindow
EndIf
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.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Re: SetGadgetItemText bei ListIconGadget - Inhalt überschrei
Bei einem Listeicongeadget bleiben mMn keine Textreste eines Items beim Überschreiben übrig...
das wäre höchstens beim schreiben in einer Datei der fall...
das wäre höchstens beim schreiben in einer Datei der fall...
Re: SetGadgetItemText bei ListIconGadget - Inhalt überschrei
Oder vielleicht eine automatische Spaltenanpassung?
Ich versuchs einfach mal 
Code: Alles auswählen
If OpenWindow(0, 100, 100, 300, 100, "ListIcon Example", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
ListIconGadget(0, 5, 5, 290, 90, "Name", 0, #PB_ListIcon_FullRowSelect|#PB_ListIcon_AlwaysShowSelection)
AddGadgetColumn(0, 1, "Address", 0)
AddGadgetItem(0, -1, "Harry Rannit"+Chr(10)+"12 Parliament Way, Battle Street, By the Bay")
AddGadgetItem(0, -1, "Ginger Brokeit"+Chr(10)+"130 PureBasic Road, BigTown, CodeCity")
SetGadgetItemText(0, 1, "Gin", 0)
SendMessage_(GadgetID(0),#LVM_SETCOLUMNWIDTH,0,#LVSCW_AUTOSIZE_USEHEADER)
SendMessage_(GadgetID(0),#LVM_SETCOLUMNWIDTH,1,#LVSCW_AUTOSIZE_USEHEADER)
Repeat
Event = WaitWindowEvent()
Until Event = #PB_Event_CloseWindow
EndIf

-
- Beiträge: 250
- Registriert: 25.11.2004 19:51
- Computerausstattung: Alienware Aurora / Intel Core i7 CPU @ 2.8 GHz / 64 Bit OS
Re: SetGadgetItemText bei ListIconGadget - Inhalt überschrei
ah merci erstmal für die Ratschläge - glaub bin meinem Problem näher gekommen.
Ich schreibe mit SetGadgetItemText(#ListIconGadget_Clients, x, ""+PeekS(*NetBuffer),1)
ich denke dass der Buffer nur nicht leer war *ups*
Sorry und danke für den schlag auf den Hinterkopf
Ich schreibe mit SetGadgetItemText(#ListIconGadget_Clients, x, ""+PeekS(*NetBuffer),1)
ich denke dass der Buffer nur nicht leer war *ups*
Sorry und danke für den schlag auf den Hinterkopf

PB 4.6 / 32 Bit / 64 Bit
Re: SetGadgetItemText bei ListIconGadget - Inhalt überschrei
Joar dann brauchst du den Speicherbereich eig. nur mit FillMemory() überschreiben.