Français
Source/ Codesnippets

Alternatives Éditer Hex Spinedit

 

Frank
Abbing
cela profane SpinEdit-Contrôle - je sags la fois dans aller honnêteté - sieht hässlich aus avec seiner Unterbrechung entre Éditer et Pfeilen. Meiner attitude pour ist cela sogar un Bug...
il y a mais une automatisierte et simple trop programmierende Alternative - cela UpDown-Contrôle. facultativement comme Dezimal- ou bien Hexadezimal-Éditer (malheureusement seulement C-Style). ici un Testcode:
KompilierenMarqueSéparation
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

Fin

Gibt encore quelques Messages plus. Z.B. peux bestimmt volonté, cela sich cela Éditer qui Position et Grösse des UpDown-Controls automatisch anpasst (à gauche et rechsbündig).
aussi ist es possible, cela qui Werte de vorne commencer trop zählen, sobald un Überlauf stattgefunden hat. aussi Tausender-Markierungen sommes léger einzustellen.
Bien sûr peux dem Contrôle aussi chaque x-beliebige Éditer zugewiesen volonté. Voreingestellt ist (comment dans mon Beispiel) cela devant zuletzt generierte Éditer-Contrôle.

Viel Spass beim experimentieren!
 
04.11.2007  
 




GDL
Hi,

werde je juste la fois testen.

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




Jörg
Sellmeyer
Quelque chose comme peux on aussi encore faire:
KompilierenMarqueSéparation
 $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

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




Uwe
''Pascal''
Niemeier
allô gens!

Hoch ne variante:
KompilierenMarqueSéparation
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


c'est qui le tort qui ständigen Vereinfachungen chez Profan: Solche Feinheiten geraten vite dans Vergessenheit, et ensuite wird pour weiteren Vereifachungen geschrien...

SeeYou
Pascal
 
05.11.2007  
 




Jörg
Sellmeyer
bof, zumindest so ähnlich peux on cette effet aussi sur cela Profancontrol anwenden:
KompilierenMarqueSéparation
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: qui Message peut sich naturellement aussi sur mon obiges UpDown-Contrôle anwenden.
Im Übrigen benutzt Rolands Spinedit plan cet API.
 
05.11.2007  
 




RGH
aussi si cette Fil déjà 7,5 Jahre (!) vieux ist:
j'ai dans X3 qui inzwischen de Microsoft comme "veraltet" gekennzeichnete API "createUpDownControl" par qui aktuelle variante avec "createwindow(MSCTLS_UPDOWN32" ersetzt. cela sieht pas seulement quelque chose besser aus, mais erlaubt aussi Werte, qui sur den 16-Bit-Bereich hinausgehen:
KompilierenMarqueSéparation
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

Fin
 
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.
super.

quoi mir beim Testen auffiel:
Im Interpreter funktioniert cela (c)-menu, mais kompiliert funktioniert es pas.
 
XProfan X3
System: Windows 8/10, XProfan X4
Programmieren, das spannendste Detektivspiel der Welt.
29.06.2015  
 




RGH
cela était déjà toujours so: Im Interpreter wird qui Info-Box zum Interpreter angezeigt et ensuite %menuitem sur 254 gesetzt. Im fertigen Programme (EXE ou bien Runtime) wird seulement %menuitem sur 254 gesetzt. si qui Programmierer im Programme puis pas reagiert, passiert plan rien.

cela était ursprünglich pour gedacht, dass ici qui Programmierer seinen eigenen Copyright-Hinweis mets. et im fertigen Programme muss oui pas absolument qui Copyright-Hinweis de XProfan drin stehen.

cela steht aussi so irgendwo dans qui Aider.

Salut
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


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

16.617 Views

Untitledvor 0 min.
Rainer Hoefs22.04.2023
p.specht20.11.2021
Uwe Lang20.11.2021
Manfred Barei19.11.2021
plus...

Themeninformationen



Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie