Español
Fuente/ Codesnippets

Alternatives Editar Hex Spinedit

 

Frank
Abbing
Das profane SpinEdit-Control - Yo sags veces en aller Ehrlichkeit - sieht hässlich de con su Unterbrechung zwischen Editar y Pfeilen. Meiner Meinung después de es el incluso una Bug...
Lo son aber una automatisierte y simplemente a programmierende Alternative - el UpDown-Control. Wahlweise como Dezimal- oder Hexadezimal-Editar (desafortunadamente sólo C-Style). Hier una Testcode:
KompilierenMarcaSeparación
Declare xdec&, xhex&, font&
Def GetSysColor(1) !USER32,GetSysColor
Cls GetSysColor(15)
font& = Create(Font,MS Sans Serif,10,0,0,0,0)
SetDialogFont font&
Dezimal-Edit
Create(EDIT,%HWnd,,8,8,64,20)
xdec&=Control(MSCTLS_UPDOWN32, ,$54000192,72,8,16,20, %hwnd, 2019, %hInstance, $00000000)
SendMessage(xdec&,$467,0,60)      60 = Ausgangszahl
SendMessage(xdec&,$46f,40,1440)   40 bis 1440 = Mini-und Maximalwert
Hexadezimal-Edit
Create(EDIT,%HWnd,,8,32,64,20)
xhex&=Control(MSCTLS_UPDOWN32, ,$54000192,72,32,16,20, %hwnd, 2019, %hInstance, $00000000)
SendMessage(xhex&,$46d,16,0)      10 = Dezimal / 16 = Hexadezimal
SendMessage(xhex&,$467,0,60)      60 = Ausgangszahl
SendMessage(xhex&,$46f,40,1440)   40 bis 1440 = Mini-und Maximalwert

While 1

    WaitInput
    Case %key=2:Break

EndWhile

End

Gibt todavía algunos Messages mehr. Z.B. kann determinado voluntad, el se Edit el Position y Grösse des UpDown-Controls automáticamente anpasst (links y rechsbündig).
Auch es posible, el el Werte de vorne beginnen a zählen, sobald una Überlauf stattgefunden ha. Auch Tausender-Markierungen son ligeramente einzustellen.
Natürlich kann el Control auch cada x-beliebige Editar zugewiesen voluntad. Voreingestellt es (como en mi Ejemplo) el davor zuletzt generierte Editar-Control.

Viel Spass beim experimentieren!
 
04.11.2007  
 




GDL
Hi,

voluntad Yo igual veces testen.

Servus
Georg
 
Windows7 Xprofan 8,9,10 [...]  [...] 
04.11.2007  
 




Jörg
Sellmeyer
Algo como puede ser auch todavía hacer:
KompilierenMarcaSeparación
 $H windows.ph
 $H messages.ph
Declare xdec&, xhex&, font&
Cls ~GetSysColor(15)
SetDialogFont ~GetStockObject($11)
Dezimal-Edit
Create(EDIT,%HWnd,,8,8,64,20)
xdec&=Control(MSCTLS_UPDOWN32, ,$54000192,72,8,16,20, %hwnd, 2019, %hInstance, $00000000)
SendMessage(xdec&,$467,0,60)60 = Ausgangszahl
SendMessage(xdec&,$46f,40,1440)40 bis 1440 = Mini-und Maximalwert
Hexadezimal-Edit
Create(EDIT,%HWnd,,8,32,64,20)
xhex&=Control(MSCTLS_UPDOWN32, ,$54000192,72,32,16,20, %hwnd, 2019, %hInstance, $00000000)
SendMessage(xhex&,$46d,16,0)10 = Dezimal / 16 = Hexadezimal
SendMessage(xhex&,$467,0,60)60 = Ausgangszahl
SendMessage(xhex&,$46f,40,1440)40 bis 1440 = Mini-und Maximalwert
Var l& = Create(Listbox,%hwnd,,8,56,80,19)
SetStyle l&,1,GetStyle(l&,1) | ~ws_ex_right

WhileLoop -9,9

    AddString(l&,Wert:  + Str$(&Loop))

Wend

While 1

    WaitInput
    Case %key=2:Break

EndWhile

End
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
04.11.2007  
 




Uwe
''Pascal''
Niemeier
¡Hola Personas!

Hoch ne Variante:
KompilierenMarcaSeparación
window 100,100-300,300
 $H Messages.ph
 $H commctrl.ph
create(text,%hwnd,,50,50,50,20)
var UD&=~CreateUpDownControl($54000192,0,0,0,0,%hwnd,1,0,0,10000,-10000,50)
setwindowpos UD&=50,100-50,50
declare a#
dim a#,24
long a#,0=0---zu Beginn 1er zählen
long a#,4=1
long a#,8=2---nach 2 Sekunden 10er zählen
long a#,12=10
long a#,16=4--nach 4 Sekunden 100er zählen
long a#,20=100
sendmessage(UD&,~UDM_SETACCEL,3,a#)

while 1

    waitinput

endwhile


Es el Nachteil el ständigen Vereinfachungen en Profano: Solche Feinheiten geraten rápidamente en Vergessenheit, y luego después de más Vereifachungen geschrien...

SeeYou
Pascal
 
05.11.2007  
 




Jörg
Sellmeyer
Naja, zumindest así ähnlich puede ser esta Effekt auch el Profancontrol anwenden:
KompilierenMarcaSeparación
window 100,100-300,300
Def UDM_GetBuddy(1) SendMessage(&(1),$046A,0,0)
 $H Messages.ph
 $H commctrl.ph
create(text,%hwnd,,50,50,50,20)
Var UD& = Create(SpinEdit,%hwnd,0;-10000;10000,10,80,100,20)
VAR UDBud& = UDM_GetBuddy(UD&)
declare a#
dim a#,24
long a#,0=0---zu Beginn 1er zählen
long a#,4=1
long a#,8=2---nach 2 Sekunden 10er zählen
long a#,12=10
long a#,16=4--nach 4 Sekunden 100er zählen
long a#,20=100
sendmessage(UDBud&,~UDM_SETACCEL,3,a#)

while 1

    waitinput

endwhile

 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
05.11.2007  
 




Frank
Abbing
@Pascal: El Message lässt se natürlich auch en mein obiges UpDown-Control anwenden.
Im Übrigen benutzt Rolands Spinedit eben esta API.
 
05.11.2007  
 




RGH
Auch si dieser Hilo ya 7,5 Jahre (!) alt es:
Yo habe en X3 el inzwischen de Microsoft como "veraltet" gekennzeichnete API "createUpDownControl" por el aktuelle Variante con "createwindow(MSCTLS_UPDOWN32" ersetzt. Das sieht no sólo algo mejor de, pero erlaubt auch Werte, el encima el 16-Bit-Zona hinausgehen:
KompilierenMarcaSeparación
Declare xdec&, xhex&, font&, hspin&
Def GetSysColor(1) !"USER32.DLL","GetSysColor"
Cls GetSysColor(15)
font& = Create("Font","MS Sans Serif",10,0,0,0,0)
SetDialogFont font&
' Dezimal-Edit
Create("EDIT",%HWnd,"",8,8,64,20)
xdec&=Control("MSCTLS_UPDOWN32", "",$54000192,72,8,16,20, %hwnd, 2019, %hInstance, $00000000)
SendMessage(xdec&,$467,0,60)'  60 = Ausgangszahl
SendMessage(xdec&,$46f,40,1440)'  40 bis 1440 = Mini-und Maximalwert
' Hexadezimal-Edit
Create("EDIT",%HWnd,"",8,32,64,20)
xhex&=Control("MSCTLS_UPDOWN32", "",$54000192,72,32,16,20, %hwnd, 2019, %hInstance, $00000000)
SendMessage(xhex&,$46d,16,0)'  10 = Dezimal / 16 = Hexadezimal
SendMessage(xhex&,$467,0,60)'  60 = Ausgangszahl
SendMessage(xhex&,$46f,40,1440)'  40 bis 1440 = Mini-und Maximalwert
' Profan
hSpin& = Create("SpinEdit", %hWnd, "60; -100; 100", 8, 56, 80, 20)

While 1

    WaitInput
    Case %key=2:Break

EndWhile

End
 
XProfan X2
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
28.06.2015  
 




Michael
W.
Klasse.

Was me beim Testen auffiel:
Im Interpreter funktioniert el (c)-Menü, aber kompiliert funktioniert no.
 
XProfan X3
System: Windows 8/10, XProfan X4
Programmieren, das spannendste Detektivspiel der Welt.
29.06.2015  
 




RGH
Das war ya siempre así: Im Interpreter se el Info-Box para Interpreter adecuado y luego %menuitem en 254 gesetzt. Im fertigen Programa (EXE oder Runtime) se sólo %menuitem en 254 gesetzt. Wenn el Programmierer en el Programa darauf no reagiert, passiert eben nichts.

Das war ursprünglich dafür pensamiento, dass hier el Programmierer seinen eigenen Copyright-Referencia setzt. Und en el fertigen Programa muss sí no necesariamente el Copyright-Referencia de XProfan drin posición.

Das es auch así irgendwo en el Ayuda.

Saludo
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
29.06.2015  
 



Zum Quelltext


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

16.592 Views

Untitledvor 0 min.
Rainer Hoefs22.04.2023
p.specht20.11.2021
Uwe Lang20.11.2021
Manfred Barei19.11.2021
Más...

Themeninformationen



Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie