Fuente/ Codesnippets | | | | Jörg Sellmeyer |
$H windows.ph
SubProc Crear.XBitmap
Parámetros hwnd&,hPic&,x%,y%,ToolTip$,ExtStyle%
Case %pcount = 5:ExtStyle% = 0
If ExtStyle% = 1
ExtStyle% = ~WS_EX_DLGMODALFRAME
ElseIf ExtStyle% = 2
ExtStyle% = ~WS_EX_CLIENTEDGE
ElseIf ExtStyle% = 3
ExtStyle% = ~WS_EX_CLIENTEDGE | ~WS_EX_DLGMODALFRAME
EndIf
SizeOf(hPic&)
Var hdl& = Control("STATIC","test",$5400090E,x%%,%bmpx,%bmpy,hwnd&,0,%hInstance,ExtStyle%)
SendMessage(hdl&,~STM_SETIMAGE,0,hPic&)
Crear("Tooltip",hwnd&,hdl&,ToolTip$)
Volver hdl&
ENDPROC
Cls
ChDir $WinPath
Imprimir FindFirst$("*.bmp"),
If %Ioresult
Imprimir "Keine Bilder vorhanden"
WaitInput
End
Más
imprimir FindNext$(),FindNext$(),FindNext$()
EndIf
Var hPic1& = Crear("hSizedPic",-1,FindFirst$("*.bmp"),80,80,1)
Var hPic2& = Crear("hSizedPic",-1,FindNext$(),80,80,1)
Var hPic3& = Crear("hSizedPic",-1,FindNext$(),80,80,1)
Var hPic4& = Crear("hSizedPic",-1,FindNext$(),80,80,1)
var h1& = Crear("XBitmap",%hwnd,hPic1&,10,100,FindFirst$("*.bmp"),2)
var h2& = Crear("XBitmap",%hwnd,hPic2&,110,100,FindNext$(),1)
var h3& = Crear("XBitmap",%hwnd,hPic3&,210,100,FindNext$(),2)
var h4& = Crear("XBitmap",%hwnd,hPic4&,310,100,FindNext$(),3)
AddStrings(0,Str$( hpic1&))
AddStrings(0,Str$( hpic2&))
AddStrings(0,Str$( hpic3&))
AddStrings(0,Str$( hpic4&))
Selección aleatoria
Declarar bild&
Imprimir "einfach veces el Bilder anklicken"
Mientras que 1
WaitInput
bild& = Val(GetString$(0,Rnd(4)))
If %key = 27
Romper
ElseIf (&wparam = h1&) Or (&lparam = h1&)
~LockWindowUpdate(h1&)
SendMessage(h1&,~STM_SETIMAGE,0,bild&)
~LockWindowUpdate(0)
ElseIf (&wparam = h2&) Or (&lparam = h2&)
SendMessage(h2&,~STM_SETIMAGE,0,bild&)
ElseIf (&wparam = h3&) Or (&lparam = h3&)
SendMessage(h3&,~STM_SETIMAGE,0,bild&)
ElseIf (&wparam = h4&) Or (&lparam = h4&)
SendMessage(h4&,~STM_SETIMAGE,0,bild&)
EndIf
Wend
DeleteObject hPic1&,hPic2&,hPic3&,hPic4&
|
| | | Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 11.11.2011 ▲ |
| |
| | | Was Yo schade finde es el uno Bitmaps irgendwie no flickerfrei neue Bilder zuweisen kann. |
| | | | |
| | Jörg Sellmeyer | en el pequeño Bildern fällt no así en aber incluso con LockWindowUpdate sieht uno de y a así una weißen Streifen. ¿Te ha el? |
| | | Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 11.11.2011 ▲ |
| |
| | | Ob klein oder groß... es sólo el Cuestión wieviel Tiempo el Rechner grad ha etc...
en größeren Bitmaps fällt el natürlich más en.
Musst veces z.B. muy fix aktualisieren z.B. 50 Bilder pro Sekunde oder viele kleine Bitmaps. . |
| | | | |
| | | Solch direkt en XProfan eingbautes Canvas ( [...] ) wäre el Brüller aber es sí offensichtlich no una vez a Diskussion obwohl lo simplemente umzusetzen es como en el Principio sólo una hPic en wmPaint gemalt voluntad muss. Quasi una create.canvas el una Control/ Ventana erstellt el una hPic zugeordnet voluntad kann welches suscrito se en wm_paint. (Lo muss sí no es igual una scrollbare Zeichenfläche ser como ellos de el Inc producido se el dynamisch por Proc características en lugar de una hPic.) |
| | | | |
| | Jörg Sellmeyer | Noch mehr Spielereien con Tooltips y Bitmaps. Keine Idea, si el así "statthaft" es. Pero lustich:
Ventana %maxx,%maxy
Declarar hBmp&,t&
ChDir $WinPath
AddFiles "*.bmp"
Declarar hPic&[],hBack&[]
Var y% = 2
Declarar bmptext$
WhileLoop 0,%getcount'-270
hPic&[&Loop] = Crear("hSizedPic",-1,GetString$(0,&Loop),80,80,1)
hBmp& = Crear("Mapa de bits",%hwnd,hPic&[&Loop],5 + (&Loop Mod 23) * 81,y%)
hBack&[&Loop] = Crear("hSizedPic",-1,GetString$(0,&Loop),380,380,1)
bmptext$ = MkStr$(Espacio$(%bmpx \ 3) + "\n",%bmpy \ 13)
t& = Crear("Tooltip",%hwnd,hBmp&,bmptext$)
SetText t&, %hwnd, 0,"",0,GetString$(0,&Loop)
'el bewirkt desafortunadamente nichts
' SetWindowPos t& = 2000,0 - %bmpx,%bmpy;1
Crear("Mapa de bits",t&,hBack&[&Loop],10,30)
SetStyle hBmp&,GetStyle(hbmp&) | $100
Casenote (&Loop + 1) Mod 23:Inc y%,80
Título de la ventana Str$(%getcount - &Loop)
Wend
Imprimir "fertig!"
Selección aleatoria
Mientras que 1
Waitinput
If IsKey(27)
Romper
EndIf
Wend
WhileLoop 0,SizeOf(hPic&[])-1
DeleteObject hPic&[&Loop],hBack&[&Loop]
Wend
|
| | | Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 15.11.2011 ▲ |
| |
| | | Öhm... en me hier grad bajo Vista sehe Yo ("nur") una weißes Ventana con el Edición "fertig!".
|
| | | | |
| | Jörg Sellmeyer | Hast Usted porque Bitmaps en el Windowsordner? Sonst paß el Pfad doch veces a. Geht en efecto con allen otro Formaten, si el código entsprechend änderst. |
| | | Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 16.11.2011 ▲ |
| |
| | | Hmpf, X11 son me natürlich en dieser Anweisung: el Meldung:
de.
Also fix primero XProfan12 zusammengesucht como I diesem Computer hier todavía "neu" bin y siehe como:
Nur rechts el Rand zwischen Bild y ToolTip-Rand es no así breit como links. |
| | | | |
| | Jörg Sellmeyer |
Nur rechts el Rand zwischen Bild y ToolTip-Rand es no así breit como links.
Sí, el Platzierung es muy rudimentär, como SetWindowPos anscheinend no funktioniert en Tooltips. |
| | | Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 16.11.2011 ▲ |
| |
| | Jörg Sellmeyer | Yo probier grad veces de, el en una Diálogo auszulagern y peng - va no Ist el ahora ne profaneigene Schikane oder voluntad Windows el no? Auf el Diálogo kommt zwar el Mausklick con Rechts por pero la linke Clic sólo, si él como Haga doble clic en es. Ist doch plöd!
$H windows.ph
SubProc Crear.XBitmap
Parámetros hwnd&,hPic&,x%,y%,ToolTip$,ExtStyle%
Case %pcount = 5:ExtStyle% = 0
If ExtStyle% = 1
ExtStyle% = ~WS_EX_DLGMODALFRAME
ElseIf ExtStyle% = 2
ExtStyle% = ~WS_EX_CLIENTEDGE
ElseIf ExtStyle% = 3
ExtStyle% = ~WS_EX_CLIENTEDGE | ~WS_EX_DLGMODALFRAME
EndIf
SizeOf(hPic&)
Var hdl& = Control("STATIC","test",$5400090E,x%%,%bmpx,%bmpy,hwnd&,0,%hInstance,ExtStyle%)
SendMessage(hdl&,~STM_SETIMAGE,0,hPic&)
Crear("Tooltip",hwnd&,hdl&,ToolTip$)
Volver hdl&
ENDPROC
Cls
Var dlg& = Crear("Dialog",%hwnd,"Test",%winLeft + 50,%wintop + 100,600,400)
ChDir $WinPath
Imprimir FindFirst$("*.bmp"),
If %Ioresult
Imprimir "Keine Bilder vorhanden"
WaitInput
End
Más
imprimir FindNext$(),FindNext$(),FindNext$()
EndIf
Var hPic1& = Crear("hSizedPic",-1,FindFirst$("*.bmp"),80,80,1)
Var hPic2& = Crear("hSizedPic",-1,FindNext$(),80,80,1)
Var hPic3& = Crear("hSizedPic",-1,FindNext$(),80,80,1)
Var hPic4& = Crear("hSizedPic",-1,FindNext$(),80,80,1)
var h1& = Crear("XBitmap",dlg&,hPic1&,10,100,FindFirst$("*.bmp"),2)
var h2& = Crear("XBitmap",dlg&,hPic2&,110,100,FindNext$(),1)
var h3& = Crear("XBitmap",dlg&,hPic3&,210,100,FindNext$(),2)
var h4& = Crear("XBitmap",dlg&,hPic4&,310,100,FindNext$(),3)
AddStrings(0,Str$( hpic1&))
AddStrings(0,Str$( hpic2&))
AddStrings(0,Str$( hpic3&))
AddStrings(0,Str$( hpic4&))
Selección aleatoria
Declarar bild&
Imprimir "einfach veces el Bilder anklicken"
Mientras que 1
WaitInput
bild& = Val(GetString$(0,Rnd(4)))
If %key = 27
Romper
ElseIf (&wparam = h1&) Or (&lparam = h1&)
imprimir "a"
~LockWindowUpdate(h1&)
SendMessage(h1&,~STM_SETIMAGE,0,bild&)
~LockWindowUpdate(0)
ElseIf (&wparam = h2&) Or (&lparam = h2&)
SendMessage(h2&,~STM_SETIMAGE,0,bild&)
ElseIf (&wparam = h3&) Or (&lparam = h3&)
SendMessage(h3&,~STM_SETIMAGE,0,bild&)
ElseIf (&wparam = h4&) Or (&lparam = h4&)
SendMessage(h4&,~STM_SETIMAGE,0,bild&)
EndIf
Wend
DeleteObject hPic1&,hPic2&,hPic3&,hPic4&
|
| | | | |
|
Zum QuelltextTema opciones | 14.503 Views |
ThemeninformationenDieses Thema ha 2 subscriber: |