Wieviele Zeichen kann GetGadgetText ermitteln?

Für allgemeine Fragen zur Programmierung mit PureBasic.
Stefan Schnell
Beiträge: 3
Registriert: 11.10.2004 14:57

Wieviele Zeichen kann GetGadgetText ermitteln?

Beitrag von Stefan Schnell »

Hallo Community,
mal eine Frage zur Menge der mit GetGadgetText zu ermittelnden Zeichen, liegt die Grenze bei 32767, 65536 oder größer oder kleiner?
Danke und Tschüss
Stefan
Benutzeravatar
bobobo
jaAdmin
Beiträge: 3873
Registriert: 13.09.2004 17:48
Kontaktdaten:

Beitrag von bobobo »

31999
‮pb aktuel 6.2 windoof aktuell und sowas von 10
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
Benutzeravatar
Lars
Beiträge: 347
Registriert: 31.08.2004 23:53
Wohnort: Shanghai
Kontaktdaten:

Beitrag von Lars »

bobobo hat geschrieben:31999
Ernsthaft (ist man sich bei dir ja nie so sicher <) )?

Ich hätte jetzt einfach auf PBs String-Grenze von 64.000 bytes (NICHT 64
KBytes, Fred hatte wohl ne witzige Laune, als er sich das ausgedacht hat :D ) getippt
Lars
The only problem with troubleshooting is, that sometimes the trouble shoots back.
P4 2,6Ghz, 512MB RAM, GeForce 6200, WinXP Pro SP2, PB V3.94
Benutzeravatar
Ynnus
Beiträge: 855
Registriert: 29.08.2004 01:37
Kontaktdaten:

Beitrag von Ynnus »

Lars hat geschrieben:
bobobo hat geschrieben:31999
Ernsthaft (ist man sich bei dir ja nie so sicher <) )?

Ich hätte jetzt einfach auf PBs String-Grenze von 64.000 bytes (NICHT 64
KBytes, Fred hatte wohl ne witzige Laune, als er sich das ausgedacht hat :D ) getippt
AFAIK gibts Windowstechnisch in der Richtung eine Grenze. Irgendwo hab ich jedenfalls mal gehört, dass es eine 64 KB Grenze bei gewissen Operationen gab. Für welche Windowsversion und was genau das war, weiß ich nicht mehr, aber irgendwie kann ich mir kaum vorstellen, dass Fred da aus Spaß eine Grenze einbaut...
DarkDragon
Beiträge: 6291
Registriert: 29.08.2004 08:37
Computerausstattung: Hoffentlich bald keine mehr
Kontaktdaten:

Beitrag von DarkDragon »

Lars hat geschrieben:
bobobo hat geschrieben:31999
Ernsthaft (ist man sich bei dir ja nie so sicher <) )?

Ich hätte jetzt einfach auf PBs String-Grenze von 64.000 bytes (NICHT 64
KBytes, Fred hatte wohl ne witzige Laune, als er sich das ausgedacht hat :D ) getippt
64 bytes sind aber arg wenig. Wären ja auch nur 64 zeichen.
Angenommen es gäbe einen Algorithmus mit imaginärer Laufzeit O(i * n), dann gilt O((i * n)^2) = O(-1 * n^2) d.h. wenn man diesen Algorithmus verschachtelt ist er fertig, bevor er angefangen hat.
Benutzeravatar
bluejoke
Beiträge: 1244
Registriert: 08.09.2004 16:33
Kontaktdaten:

Beitrag von bluejoke »

im deutschen Sprachraum wird ein "." oftmals zur besseren Formatierung von Zahlen verwendet.
Entspricht dem im englischen Sprachraum verwendeten ","
Ich bin Ausländer - fast überall
Windows XP Pro SP2 - PB 4.00
Benutzeravatar
bobobo
jaAdmin
Beiträge: 3873
Registriert: 13.09.2004 17:48
Kontaktdaten:

Beitrag von bobobo »

das Editorgadget liefert keine Länge zurück .. zumindest nicht in untenstehendem Prog
und das Stringgadget, obwohl mit 64K, gefüllt liefert nur 31999 als Länge zurück ..

Code: Alles auswählen

Enumeration
  #Window_0
  #gad
  #Button_0
EndEnumeration


Procedure Open_Window_0()
  If OpenWindow(#Window_0, 279, 107, 600, 300,  #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar , "schlechte Witze")
    If CreateGadgetList(WindowID())
      ; StringGadget(#gad, 30, 70, 250, 30, "")
      EditorGadget(#gad, 0, 0, WindowWidth(), WindowHeight()-30)
      ButtonGadget(#Button_0, 0, WindowHeight()-30, 120, 30, "Auffüllen")
    EndIf
  EndIf
EndProcedure
Open_Window_0()

;text$ mit viiielen zeichen drin
SetWindowTitle(#Window_0,"Momang")
For i= 1 To 8192
  text$+"12345678"
Next i
SetWindowTitle(#Window_0,"Hab's nun")
MessageRequester("Länge von text$",Str(Len(text$)),0)

Repeat
  
  Event = WaitWindowEvent()
  
  If Event = #PB_EventGadget
    GadgetID = EventGadgetID()
    
    If GadgetID = #gad
      Debug "GadgetID: #String_0"
    ElseIf GadgetID = #Button_0
      Debug "GadgetID: #Button_0"
      SetGadgetText(#gad,text$)
      MessageRequester("len(GetGadGetText(#gad))",Str(Len(GetGadgetText(#gad))),0)
      
    EndIf
    
  EndIf
  
Until Event = #PB_EventCloseWindow

End
;
kann ich aber nix für ..
‮pb aktuel 6.2 windoof aktuell und sowas von 10
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
DarkDragon
Beiträge: 6291
Registriert: 29.08.2004 08:37
Computerausstattung: Hoffentlich bald keine mehr
Kontaktdaten:

Beitrag von DarkDragon »

bluejoke hat geschrieben:im deutschen Sprachraum wird ein "." oftmals zur besseren Formatierung von Zahlen verwendet.
Entspricht dem im englischen Sprachraum verwendeten ","
Stimmt ja, böses Deutsch. English rulez!!! :roll:
Naja, bei mir kommt das von zuvieler Floatverwendung.
Angenommen es gäbe einen Algorithmus mit imaginärer Laufzeit O(i * n), dann gilt O((i * n)^2) = O(-1 * n^2) d.h. wenn man diesen Algorithmus verschachtelt ist er fertig, bevor er angefangen hat.
Stefan Schnell
Beiträge: 3
Registriert: 11.10.2004 14:57

Beitrag von Stefan Schnell »

Danke für Eure erklärenden Ausführungen.
Gruß
Stefan
Antworten