| |
|
|
Dieter Zornow | Ich habe das Thema schon im Forum von Roland gepostet. Leider hat das Forum den Code verstümmelt. Deshalb hier nochmals zum Download.
Ein Code ist eine Minimalbeispiel von meinem Originalcode und das andere ein wirkliches Minimalbeispiel zum Test. das Beispiel von meinem Code funktioniert mit Xprofan 10 aber nicht mehr mit der Subscritionversion von XProfan 11, das heißt ich kann die Editfelder nicht mit Gettext$() auslesen. Bei dem minimalen Beispiel funktioniert es seltsamerweise auch mit XProfan 11. Das heißt irgendetwas verhindert bei meinem Originalcode das Auslesen. Bitte mal testen wer die Subscriptionversion hat, denn XProfan 10 funktioniert ja.
In der am Schluß erscheinenden Messagebox sollte C: stehen. Die benötigte Skcontrol.dll ist im Paket dabei
Gruß aus Bangkok
Dieter |
|
|
| Er ist ein Mann wie ein Baum. Sie nennen ihn Bonsai., Win 7 32 bit und Win 7 64 bit, mit XProfan X2 | 01.11.2007 ▲ |
|
|
|
|
| Ja schon interessant - auch dass das GetText genau so viele Chars wiedergibt wie man beim Erstellen des Edits im String übergibt. |
|
|
| |
|
|
|
RGH | Hm, seid Ihr sicher, daß ihr meine korrigierte Version (einen Tag nach der fehlerhaften) benutzt? Da funktioniert getText$() wieder. Hier ein Beispiel, mit dem ich es gerade getestet habe: KompilierenMarkierenSeparierendeclare text$, text&, ok&, cancel&
windowstyle 15 + 512
window 100, 100 - 700, 400
text& = create(edit, %hwnd, , 50, 50, 200, 20)
ok& = create(button, %hwnd, Ok, 50, 80, 80, 20)
cancel& = create(button, %hwnd, Ende, 50, 110, 80, 20)
while 1
waitinput
if clicked(ok&)
messagebox(gettext$(text&), Text:, 0)
elseif clicked(cancel&)
break
endif
endwhile
end
Ach ja: und wenn es auch mit der korrigierten Lieferung Probleme gibt, mache mal bitte ein Minimal-Beispiel ohne SK-Control, das Probleme bereitet. (Es ist ja immer denkbar, das Erweiterungen an die neue Version erst angepaßt werden müssen. Das war auch beim SK-Control und XProfan 10 so, obwohl ich hier eigentlich auf dem ersten Blick keinen Anlaß sehe ... aber ich kenne ja die Internas von SK-Control nicht.)
Gruß Roland |
|
|
| Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4 | 01.11.2007 ▲ |
|
|
|
|
Dieter Zornow | Also ich bin mir sicher, ich benutze die Datei vom 26.10.2007 - 20:53 - XPROFAN INTERPRETER 11.0ß S2 Wenn es an der SkControl liegen würde dürfte ja das zweite Beispiel auch nicht funktionieren. Ich denke es ist schwierig ein Beispiel herzustellen das nicht funktioniert, da das ja irgendwie eine Summe von Ereignissen braucht um nicht zu funktionieren. Aber ich versuchs mal
Gruß aus Bangkok
Dieter |
|
|
| Er ist ein Mann wie ein Baum. Sie nennen ihn Bonsai., Win 7 32 bit und Win 7 64 bit, mit XProfan X2 | 01.11.2007 ▲ |
|
|
|
|
Dieter Zornow | Habs herausgefunden, scheint doch mit der SKControl zusammenzuhängen, Wenn ich ein leeres Edit erzeuge kann es nicht mehr ausgelesen werden, Ich habe mal zum Test ein Edit mit einem Zeichen erstellt. Es kann dann auch nur ein Zeichen ausgelesen werden. Das heißt soviele Zeichen wie bei der Erstellung eingeben werden kann ich auch wieder auslesen. Warum es mit Xprofan 10 geht und mit 11 nicht muss Roland wissen. Bei Profanedits geht alles. KompilierenMarkierenSeparierenDeclare sl$,skdll&,tl&,ed&
$I SKControl.inc
cls
skdll& = Usedll(SKControl.dll)
SKCTRL_INITDLL()
tl& = SKCtrl_CreateColorEdit(%hwnd,1,RGB(0,0,0),RGB(0,180,255),0,59,(width(%hwnd)/2),20,%hInstance)
ed& = Create(Edit,%Hwnd,,50,100,100,20)
sl$ = C:
settext tl&,sl$
settext ed&,sl$
Messagebox( Gettext$(tl&),Gettext$(ed&),0)
freedll skdll&
end
Gruß aus Bangkok
Dieter |
|
|
| Er ist ein Mann wie ein Baum. Sie nennen ihn Bonsai., Win 7 32 bit und Win 7 64 bit, mit XProfan X2 | 01.11.2007 ▲ |
|
|
|
|
Jac de Lad | Sowas beklopptes... |
|
|
| Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE) Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP | 01.11.2007 ▲ |
|
|
|
|
| Der Fehler ist wohl klar - die Message für die Ermittlung der Länge des zu beziehenden Textes wird nicht von der SkControl abgefangen/umgelenkt wie die Message für das Beziehen des Textes selbst. |
|
|
| |
|
|
|
RGH | Dieter Zornow
Warum es mit Xprofan 10 geht und mit 11 nicht muss Roland wissen.
Da das Problem nur mit der DLL auftritt, wird es nur deren Autor wissen. Es hängt vermutlich damit zusammen, dass ich keine feste maximal Stringlänge von 32767 Zeichen mehr habe, sondern eine dynamische von 0 bis MAXINT. Da auch Sebastian eine Subscriptionsversion besitzt, würde ich an Deiner Stelle das problem mal im SK-Control-Forum posten.
Gruß Roland |
|
|
| Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4 | 01.11.2007 ▲ |
|
|
|