Fonte/ Codesnippets | | | | Torsten Rümker | Moin, kann mir jemand verraten, wie ich einem Spinedit die 1.000 Trennpunkte abgewöhnen kann?
also 1000 statt 1.000
MfG Torsten |
| | | Ich lerne, ob ich will oder nicht! Betriebssystem: - Ubuntu 15.x - Windows (diverse) XProfan Version: X2 | 11.11.2005 ▲ |
| |
| | Torsten Rümker | Ich wollte das Thema nochmal aufwärmen, da ich da immer noch nicht weitergekommen bin.
Wirklich niemand da der ne Ahnung hat wie ich das hinbekomme?
MfG Torsten Rümker |
| | | Ich lerne, ob ich will oder nicht! Betriebssystem: - Ubuntu 15.x - Windows (diverse) XProfan Version: X2 | 21.07.2006 ▲ |
| |
| | Rolf Koch | Einzige Möglichkeit die mir direkt einfällt:
$P+
SetErrorLevel 0
********************** HINWEISE ********************************
CODE ERZEUGT MIT ROKOS OBJECT CREATOR 4.4c
DATUM 21.07.2006 um 11:29 Uhr
VERWENDETE PROFANVERSION IST 10.0ß-NT S13 XPROFAN
CODE ERSTELLT UNTER UNBEKANNTER WINDOWSVERSION
!!! Dieser Code wird von Roc immer neu erzeugt !!!
!!! Erst bearbeiten, wenn alle Objekte erzeugt wurden !!!
!!! Verändern Sie ggf. feste Pfade in variable Pfade !!!
DEF GETSYSCOLOR(1) !USER32,GetSysColor
DECLARE SPINEDIT1&
WINDOWSTYLE 63
WINDOWTITLE Neues Fenster
WINDOW 22,20-640,500
SETTRUECOLOR 1
DECLARE ENDE%
CLS GETSYSCOLOR(15)
USEFONT MS Sans Serif,13,0,0,0,0
SETDIALOGFONT 1
Hier kann ggf. Ihr Menü hin
SPINEDIT1& = CREATE(SPINEDIT,%HWND,0;-100;5000,0229,0241,0120,0020)
SETFOCUS(%HWND)
WHILENOT ENDE%
WAITINPUT
If @EQU(%KEY,2)
LET ENDE%= 1
ELSEIF @EQU(%KEY,4)
ELSEIF GETFOCUS(SPINEDIT1&) SPINEDIT
settext spinedit1&,translate$(gettext$(spinedit1&),.,)
ENDIF
WEND
Nachteil hier dann, dass der Focus immer an den Anfang gesetzt wird. Aber da sollte ja auch possibile sein, den Cursor wieder anders zu behandeln. |
| | | | |
| | Uwe ''Pascal'' Niemeier | Hallo Leute!
Die @Create-Funktionen sind (vor Allem bei komplexeren Controls) nun mal ein Kompromiss. Wer mehr Möglichkeiten haben will, muss wohl oder übel etwas tüffteln...
window 200,100-300,150
$H Messages.ph
$H Commctrl.ph
declare Edit&,UpDown&,Style&
Edit&=create(edit,%hwnd,,100,10,80,24)
Style&=$50000000 | ~UDS_NOTHOUSANDS | ~UDS_SETBUDDYINT | ~UDS_ALIGNRIGHT
UpDown&=~CreateUpDownControl(Style&,0,0,0,0,%hwnd,555,0,Edit&,2000,0,1500)
--letze 3 Parameter: Max,Min,Vorgabe
while 1
locate 0,0
print gettext$(Edit&)--Rückgabe String
print sendmessage(UpDown&,~UDM_GETPOS,0,0)--Rückgabe Integer
waitinput
endwhile
HTH Pascal |
| | | | |
| | Michael Dell | Genau, hab auch etwas gebastelt...
Original-Autor: Thomas Hölzer
Bearbeited: Michael Dell
Proc CrSpinEdit
Parameters wHndl&,x&,y&,dx&,dy&,sed_max&,sed_min&,sed_start&,align&,art&
Def InitCommCntrl(0) !ComCtl32.Dll,InitCommonControls
Def CreateSpinED(12) !ComCtl32.Dll,CreateUpDownControl
Declare sed&,alignCT&
If (align&>3)
alignCT& = 8
align& = (align&-4)
EndIf
CaseNot (art&=0): art& = 6000 keinen Punkt setzen
InitCommCntrl()
sed& = CreateSpinED($54800226+alignCT&+art&,0,0,0,0,wHndl&,$0FFFF,%hinstance,
Control(Edit,,$50000000+align&,x&,y&,dx&,dy&,wHndl&,0,%HInstance,$200),
sed_max&,sed_min&,sed_start&)
Return sed&
EndProc
**** Beispiel ****
Windowtitle Über Systemmenü beenden
Cls External(USER32.DLL,GetSysColor,15)
Normales Control
CrSpinEdit(%HWnd,10,10,100,22,10010,9990,10000,0,1) Links + UpDown Rechts - Punkt
CrSpinEdit(%HWnd,10,50,100,22,10010,9990,10000,1,1) Zentriert + UpDown Rechts - Punkt
CrSpinEdit(%HWnd,10,90,100,22,10010,9990,10000,2,1) Rechts + UpDown Rechts - Punkt
Gedrehtes Control
CrSpinEdit(%HWnd,150,10,100,22,10010,9990,10000,6,0) Rechts + UpDown Links + Punkt
CrSpinEdit(%HWnd,150,50,100,22,10010,9990,10000,5,0) Zentriert + UpDown Links + Punkt
CrSpinEdit(%HWnd,150,90,100,22,10010,9990,10000,4,0) Links + UpDown Links + Punkt
While 1
WaitInput
EndWhile
End
|
| | | Salu Michael...
Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! | 23.07.2006 ▲ |
| |
| | GDL | Hi, stand auch vor dem Trennpunktproblem.Lösungen hier sind super.Danke.
Servus Georg |
| | | | |
| | | Uwe's Variante als mögliche XPSE
window 200,100-300,150
long Edit=create("edit",%hwnd,"",100,10,80,24)
long updown=createupdowncontrol(ws_child | ws_visible | uds_nothousands | uds_setbuddyint | uds_alignright,0,0,0,0,hwnd,555,0,edit,2000,0,1500)
do {
locate 0,0
print gettext$(edit)
print sendmessage(updown,udm_getpos,0,0)
waitinput
}
|
| | | | |
| | | Interessant das dies nicht funktioniert:
cls
long Edit=create(spinedit,hwnd,4000;-100;5000,0229,0241,0120,0020)
long spin=findwindowex(hwnd,0,msctls_updown32,0)
setstyle spin,ws_child | ws_visible | uds_nothousands | uds_setbuddyint | uds_alignright
do {
locate 0,0
print gettext$(edit)
waitinput
}
|
| | | | |
| | GDL | Ciao,
habe mich mit Michaels Code zu presto gefreut.Lassen sich mit gettext$() nicht auslesen.
Original-Autor: Thomas Hölzer
Bearbeited: Michael Dell
declare m&
Proc CrSpinEdit
Parameters wHndl&,x&,y&,dx&,dy&,sed_max&,sed_min&,sed_start&,align&,art&
Def InitCommCntrl(0) !ComCtl32.Dll,InitCommonControls
Def CreateSpinED(12) !ComCtl32.Dll,CreateUpDownControl
Declare sed&,alignCT&
If (align&>3)
alignCT& = 8
align& = (align&-4)
EndIf
CaseNot (art&=0): art& = 6000 keinen Punkt setzen
InitCommCntrl()
sed& = CreateSpinED($54800226+alignCT&+art&,0,0,0,0,wHndl&,$0FFFF,%hinstance,
Control(Edit,,$50000000+align&,x&,y&,dx&,dy&,wHndl&,0,%HInstance,$200),
sed_max&,sed_min&,sed_start&)
locate 15,10
print Erstellungsinhalt= +gettext$(sed&)
Return sed&
EndProc
**** Beispiel ****
Windowtitle Über Systemmenü beenden
Cls External(USER32.DLL,GetSysColor,15)
Normales Control
m&=CrSpinEdit(%HWnd,10,10,100,22,10010,9990,10000,0,1) Links + UpDown Rechts - Punkt
CrSpinEdit(%HWnd,10,50,100,22,10010,9990,10000,1,1) Zentriert + UpDown Rechts - Punkt
CrSpinEdit(%HWnd,10,90,100,22,10010,9990,10000,2,1) Rechts + UpDown Rechts - Punkt
Gedrehtes Control
CrSpinEdit(%HWnd,150,10,100,22,10010,9990,10000,6,0) Rechts + UpDown Links + Punkt
CrSpinEdit(%HWnd,150,50,100,22,10010,9990,10000,5,0) Zentriert + UpDown Links + Punkt
CrSpinEdit(%HWnd,150,90,100,22,10010,9990,10000,4,0) Links + UpDown Links + Punkt
While 1
WaitInput
locate 16,10
print Ausleseinhalt= +gettext$(m&)
EndWhile
End
Probiere nun iFs Vorschlag aus.
Servus Georg |
| | | | |
| | GDL | Hallo iF,
Warst schneller, kann kein Spinedit mittels gettext$() von diesen Codebeispielen auslesen.
Servus Georg |
| | | | |
| | Jörg Sellmeyer | Hallo Georg,
Damit funktioniert es:
|
| | | Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 16.08.2007 ▲ |
| |
| | GDL | Es geht, klasse.
Servus Georg |
| | | | |
|
Zum QuelltextTopic-Options | 14.641 Views |
ThemeninformationenDieses Thema hat 8 subscriber: |