| |
|
|
- Seite 1 - |
|
Julian Schmidt | Hallo, ich habe ein kleines Problem mit SelectString wegen eines Array's Hier mal ein Minibeispiel. KompilierenMarkierenSeparierencls
declare choosetitle&,ok&,Abort&,edit&, chbox2&, titleedit&, choose&, titelschrift$[], font&, ende%
titleedit&=Create("Edit",%hwnd,"Title",20,20,200,32)
titelschrift$[1]="Times New Roman"
font&=Create("Font",titelschrift$[1],27,0,1,0,0)
SetFont titleedit&,font&
EnableWindow titleedit&,0
choose&=Create("Button",%hwnd,"Title ändern",240,19,120,35)
while 1
waitinput
case getfocus(choose&) : Titleaendern
Endwhile
Proc Titleaendern
choosetitle&=Create("Window",%hwnd,"Titel anpassen",200,100,400,200)
ok&=Create("Button",choosetitle&,"Ok",width(choosetitle&)-90,height(choosetitle&)-50,70,30)
Abort&=Create("Button",choosetitle&,"Abbrechen",20,height(choosetitle&)-50,100,30)
edit&=Create("Edit",choosetitle&,Gettext$(titleedit&),20,20,width(choosetitle&)-40,25)
chbox2&=Create("ChoiceBox", choosetitle&, 1, 20, 55, width(choosetitle&)-40, 130)
ClearList
AddFonts
MoveListToHandle(chbox2&)
SelectString(chbox2&,-1, titelschrift$[1])
Messagebox(titelschrift$[1],"",0)
clear ende%
whilenot ende%
if getfocus(ok&)
titelschrift$[1]=GetText$(chbox2&,GetCurSel(chbox2&))
Messagebox(titelschrift$[1],"",0)
font&=Create("Font",titelschrift$[1],27,0,1,0,0)
Setfont titleedit&,font&
SetText titleedit&, Gettext$(edit&)
destroywindow(choosetitle&)
ende%=1
elseif getfocus(abort&)
destroywindow(choosetitle&)
ende%=1
Endif
Endwhile
EndProc
SelectString tut leider nicht immer in der Choicebox die entsprechende Font auswählen. Wenn ich allerdings das Array ( titelschrift$[1] ) durch einen normalen String ersetze funktioniert es einwandfrei. In der Variable titelschrift$[1] steht immer der richtige Wert!
Wo liegt das Problem das SelectString nicht immer markiert
LG
Julian57 |
|
|
| ˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗ Webseite [...] | 09.05.2011 ▲ |
|
|
|
|
« Dieser Beitrag wurde als Lösung gekennzeichnet. » |
|
Nico Madysa | Der Fehler liegt in der Zeile: KompilierenMarkierenSeparieren Bis dato wusste ich nicht mal, dass man GetText$ so benutzen darf. Das Problem liegt darin, dass der String, den du hier erhältst, noch ein zusätzliches Leerzeichen am Ende hat -- das du in deinen MessageBoxen natürlich nicht sehen konntest. Hättest du mal das hier eingebaut: KompilierenMarkierenSeparieren dann hättest du gesehen, dass vor dem schließenden Strich eine Lücke klafft. Umwege, das zu lösen, gibt es zwei. Du könntest einmal mittels Trim$ das Leerzeichen beseitigen: KompilierenMarkierenSeparieren oder du nutzt GetString$, wie ich es bisher für richtig gehalten habe: KompilierenMarkierenSeparieren Beides sollte zum Ziel führen. Warum genau bei GetText$ am Ende ein Leerzeichen hinzugerät, weiß ich allerdings selbst nicht.
PS: Noch mal in der Hilfe geblättert. GetText$ ist gar nicht für Choiceboxen gedacht. In der Hilfe steht klar, dass diese -- genau wie Listboxen -- mittels GetString$ auszulesen sind. |
|
|
| |
|
|
|
|
| Du bedenkst das der 1. Eintrag eines Arrays die ID 0 besitzt? |
|
|
| |
|
|
|
Nico Madysa | Der Fehler liegt in der Zeile: KompilierenMarkierenSeparieren Bis dato wusste ich nicht mal, dass man GetText$ so benutzen darf. Das Problem liegt darin, dass der String, den du hier erhältst, noch ein zusätzliches Leerzeichen am Ende hat -- das du in deinen MessageBoxen natürlich nicht sehen konntest. Hättest du mal das hier eingebaut: KompilierenMarkierenSeparieren dann hättest du gesehen, dass vor dem schließenden Strich eine Lücke klafft. Umwege, das zu lösen, gibt es zwei. Du könntest einmal mittels Trim$ das Leerzeichen beseitigen: KompilierenMarkierenSeparieren oder du nutzt GetString$, wie ich es bisher für richtig gehalten habe: KompilierenMarkierenSeparieren Beides sollte zum Ziel führen. Warum genau bei GetText$ am Ende ein Leerzeichen hinzugerät, weiß ich allerdings selbst nicht.
PS: Noch mal in der Hilfe geblättert. GetText$ ist gar nicht für Choiceboxen gedacht. In der Hilfe steht klar, dass diese -- genau wie Listboxen -- mittels GetString$ auszulesen sind. |
|
|
| |
|
|
|
Julian Schmidt | thx |
|
|
| ˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗ Webseite [...] | 09.05.2011 ▲ |
|
|
|