Seite 1 von 1

ListIconGadget mehrzeilig aus EditorGadget

Verfasst: 20.05.2015 11:12
von marcelx
Hallo,

mit den Eingabe aus EditorGadget + SendMessage_(GadgetID(#eId), #EM_SETTARGETDEVICE, #Null, 0)
will ich mein eingegebene mehrzeilige Texte mit ListIconGadget anzeigen:

AddGadgetItem(Id,-1, col1+Chr(10)+col2+Chr(10)+col3+Chr(10)+col4

col2=GetGadgetText(#eId)

Leider wird mein Eingabe verteilt auf die anderen Spalten.

Wie kann ich das lösen ?

Danke und Gruß
MarcelX

Re: ListIconGadget mehrzeilig aus EditorGadget

Verfasst: 20.05.2015 11:15
von RSBasic

Re: ListIconGadget mehrzeilig aus EditorGadget

Verfasst: 20.05.2015 11:56
von marcelx
Danke RSBasic für deine Antwort.

Die Source habe ich erweitert mit ein EditorGadget.

Code: Alles auswählen

EnableExplicit

Define EventID
Define x
Define Texth
Define imageList
Define inp.s

If OpenWindow(0,0,0,500,400,"Window",#PB_Window_SystemMenu|#PB_Window_ScreenCentered)
  EditorGadget(0, 10, 10, 80, 60)
  SendMessage_(GadgetID(0), #EM_SETTARGETDEVICE, #Null, 0)
  ButtonGadget(2, 100, 30, 100, 20, "Start")
        
  ListIconGadget(1,10,80,WindowWidth(0),WindowHeight(0),"Spalte",250,#PB_ListIcon_FullRowSelect|#PB_ListIcon_GridLines)
  AddGadgetColumn(1,1,"Spalte 2",100)
  AddGadgetColumn(1,2,"Spalte 3",100)
  
  Texth = SendMessage_(GadgetID(1), #LVM_GETITEMSPACING, 1, 0) >> 16 - 4
  imageList = ImageList_Create_(1, 5*Texth, #ILC_COLOR32 | #ILC_MASK, 0, 0) ;for 5 lines
  SendMessage_(GadgetID(1), #LVM_SETIMAGELIST, #LVSIL_SMALL, imageList)
  
  Repeat
    Select WaitWindowEvent() 
      Case  #PB_Event_CloseWindow 
        End
      Case  #PB_Event_Gadget
        Select EventGadget()
          Case 2 ; button
            inp = GetGadgetText(0) ; EditorGadget
            AddGadgetItem(1,-1, "Col 1" + Chr(10) + inp)
        EndSelect
    EndSelect
  ForEver
EndIf
Wenn ich im EditorGadget z.B. 3 Zeilen mit CR getrennt eingebe und Start drückt, werden meine Eingaben verteilt auf die andere Spalten.

Re: ListIconGadget mehrzeilig aus EditorGadget

Verfasst: 20.05.2015 12:13
von marcelx
Ich habe inp angepasst:

Code: Alles auswählen

inp = ReplaceString(GetGadgetText(0), #LF$, #CR$) ; EditorGadget
Wenn ich
1
2
3
eingebe, ist die Ausgabe in 3 Zeile (OK).

Wenn ich
1
2
3
4
eingebe, wird alles einzeilige ausgegeben!

Re: ListIconGadget mehrzeilig aus EditorGadget

Verfasst: 20.05.2015 12:22
von Kiffi

Code: Alles auswählen

inp = ReplaceString(GetGadgetText(0), #CRLF$, #CR$)
Grüße ... Peter

Re: ListIconGadget mehrzeilig aus EditorGadget

Verfasst: 20.05.2015 12:31
von marcelx
Danke Peter,

jetzt passiert es mit Eingabe bis 1..6 (mit CR dazwischen.
Das verstehe ich nicht.

Re: ListIconGadget mehrzeilig aus EditorGadget

Verfasst: 20.05.2015 13:04
von Kiffi
mmh, da musst Du meines Erachtens das hier anpassen:

Code: Alles auswählen

  imageList = ImageList_Create_(1, 5*Texth, #ILC_COLOR32 | #ILC_MASK, 0, 0) ;for 5 lines
Grüße ... Peter

Re: ListIconGadget mehrzeilig aus EditorGadget

Verfasst: 20.05.2015 13:21
von marcelx
habe ich gerade (nach eine Pause) auch gesehen:
5*Texth

Danke
MarcelX