Français
Forum

Sourcecode PictureBox ähnlich Delphi Paintbox

 
- page 1 -


 
11.08.2006  
 



 
- page 2 -


Hm vraie?

exposition la fois si chez meinem Demo ici cela Bild aussi zerissen wird.

PS: Exe im Dateianhang.
KompilierenMarqueSéparation
 {$cleq}
declare inframe1&,inframe2&,pic&,ps&,fle$
DEF createpicstatic(6) control(STATIC,@$(2),$5400010E,@%(3),@%(4),@%(5),@%(6),@%(1),2000, %HInstance)

Proc createplane

    Parameters __hd&,__xp&,__yp&,__xs&,__ys&,__xr&,__yr&
    __hd&=Control(LISTBOX,, $50300000,__xp&,__yp&,0,0,__hd&,0,%hinstance)
    Case __yr&<__ys&:__yr&=If(__xr&>__xs&,__ys&-25,__ys&-10)
    Sendmessage(__hd&,404,__xr&,0);sendmessage(__hd&,416,0,1)

    Whileloop __yr&;Addstring(__hd&,);Wend

        Setwindowpos __hd&=__xp&,__yp&-__xs&,__ys&;0
        Return Control(STATIC,,1409286400,0,0,If(__xr&<__xs&,__xs&,__xr&),__yr&+10,__hd&,0,%Hinstance,$0)

    Endproc

    windowstyle ( 512 | 8 | 16 )
    window 0,0 - 600,600
    fle$:=map.bmp
    mloadbmp fle$
    pic&:=Create(hPic,-1,fle$)
    Inframe1&=createplane(%Hwnd,5,5,500,500,%bmpx,%bmpy)
    ps&:=createpicstatic(inframe1&,,0,0,%bmpx,%bmpy)
    Sendmessage(ps&,$172,0,pic&)

    whilenot %key==2

        waitinput

    wend

    deleteobject pic&
    end

2.587 kB
Hochgeladen:11.08.2006
Downloadcounter41
Download
 
11.08.2006  
 




rainerhoefs
allô iF,

prima Votre EXE zeigt oui c'est ca quoi je wünsche, et funktioniert correcte. merci!!

mais maintenant habe Je l' Source pour 7.0 abgeändert, et là hüpft es wieder! Sowie Du den HorzScrollbar bewegst hüpft cela Bild un paire Punkte pour dessus. si Du den VertScrollbar bewegst hüpft cela Bild un paire Punkte à droite.

je vermute, cela es quoi avec den Rändern qui Listbox trop 1faire hat. car y erstellst Du oui cela Static. et si on eh bien scrollt wird cela Static dans qui Listbox bewegt, et là mon je springt es ensuite.

ici mon geänderter Source:
KompilierenMarqueSéparation
Declare Inframe1&
Declare PictureHandle&
Declare PictureBox&
Declare dateiname#
Declare FileName$
Declare size#
Declare BmpX%
Declare BmpY%
Def Loadimage(6) !USER32,LoadImageA

Proc Createplane

    Parameters hd&,xp&,yp&,xs&,ys&,xr&,yr&,Dummy&
    hd&=Control(LISTBOX,,$50300000,xp&,yp&,0,0,hd&,0,%Hinstance)
    Dummy& = If(xr&>xs&,ys&-25,ys&-10)
    Case yr& < ys& : yr& = Dummy&
    Sendmessage(hd&,404,xr&,0)
    Sendmessage(hd&,416,0,1)

    Whileloop yr&

        Addstring(hd&,)

    Wend

    Setwindowpos hd&=xp&,yp&-xs&,ys&;0
    Dummy& = If(xr&<xs&,xs&,xr&)
    Return Control(STATIC,,1409286400,0,0,Dummy&,yr&+10,hd&,0,%Hinstance,$0200)

Endproc

Proc GetBmpDimension

    Parameters bmpfile$
    Dim size#,8
    FileMode 0
    Assign #1,bmpfile$
    OpenRW #1
    Seek #1,18
    BlockRead(#1,size#,0,8)
    Close #1
    BmpX% = Long(size#,0)
    BmpY% = Long(size#,4)
    Dispose size#

EndProc

Windowstyle ( 512 | 8 | 16 )
Window 0,0 - 600,600
Cls @RGB(123,23,0)
Dim dateiname#,256
FileName$ = LoadFile$ (Bild laden!,*.bmp)
GetBmpDimension FileName$
String dateiname#,0 = FileName$
PictureHandle& = Loadimage(%Hinstance,dateiname#,0,0,0,$00050)
Createplane %Hwnd,10,10,500,500,BmpX%,BmpY%
Inframe1& = @&(0)
PictureBox& = Control(STATIC,,$5400010E,0,0,BmpX%,BmpY%,Inframe1&,2000,%Hinstance)
Sendmessage(PictureBox&,$172,0,PictureHandle&)

Whilenot %Key = 2

    Waitinput

Wend

Dispose Dateiname#
Deleteobject PictureHandle&
ass=s4 href='./../../function-references/XProfan/end/'>Fin

Sorry j'ai ihn dans mon Stil geschrieben.

Rainer
 
11.08.2006  
 



chacun soll ici dans seinem Stil écrivons dürfen je gugs mir grad à.
 
11.08.2006  
 



Dein Source reagiert avec XProfan10 ebenso richtig comment meiner. Hm! malheureusement hab je ne...aucune Profan²7 plus herumzuliegen...

peut-être hilft wirklich seulement cela Herumspielen am ControlStil.
 
11.08.2006  
 




rainerhoefs
allô iF,

malheureusement funktioniert Votre EXE aussi pas richtig. chez dem mitgelieferten Bild fällt es seulement très mal sur. c'est pourquoi habe je es seulement pour mehrmaligem Hinsehen entdeckt. aussi là springt cela Bild. seulement denke je le nombre Punkte qui es versetzt, si on den Scrollbar verschiebt, hängt de qui Bildgröße avec ab.

ensuite springt es arrêt toujours beim anfahren, si on ensuite konsequent plus scrollt springt es pas plus.

cela springen peux on pas mal voyons si on pas den Slider bewegt, mais den Arrow anklickt, dans dessen direction es bewegt volonté soll.

Lade un Bild et nehme d'abord den Arrow à droite scrollen. ensuite vois Du es très bien. ensuite den pour unten Scrollen-Arrow. aussi là sieht on den Sprung. Beim Slider ist qui Sprung m.E. kleiner.

eh bien bien so werde je la fois à qui Listbox rumbasteln. la fois sans Frame ou bien la fois voyons quoi on encore changement peux!

là es sich um un Scanprogramm pour Dias et Negative handelt, est un Sprung im photo naturellement pas akzeptabel.

merci einstweilen

Rainer
 
12.08.2006  
 




Michael
Wodrich
j'ai mir fois le 7.0 herausgekramt - car chez mir courir alle Beispiele.

maintenant vois je es deutlich. qui Grund pour cette Bildsprung ist:
qui Rahmenstyle wird zwar gesetzt - un kleiner ombre à gauche et dessus - mais il wird par cela Bild schlicht übermalt.
Scrollt on ensuite entier pour vorne et dessus, ensuite ist qui cadre sur einmal wieder là (il wird alors mitgescrollt).

ici ist alors qui 7.0 Schuld am Bildsprung.
une mögliche Solution: Den Style so mettons, qui ici aucun störenden Rahmenstyles entstehen et qui Sunken- et quoi que + subj. -Effekte simple um cet Contrôle drumherum malen.

alors schlicht ausgedrückt:
- un cadre-Contrôle erstellen
- y cela Inline-Contrôle einbetten
- y cela Bild représenter
Alles dans un PROC et bien...

belle Grüße
Michael Wodrich

(cela Du Dir avec einer neueren Version cela vivre erleichtern peux, savoir Du oui sûrement...)
 
Programmieren, das spannendste Detektivspiel der Welt.
12.08.2006  
 




rainerhoefs
allô Michael,

quoi meinst Du avec einem cadre-Contrôle?

Rainer
 
12.08.2006  
 




Michael
Wodrich
Stell es Dir comment une Bilderrahmen avant. cela äußere Contrôle versiehst Du avec den gewünschten cadre-Effekten (SS_Sunken z.B.). y platzierst Du cela Inline-Contrôle. Hierbei dois Du ensuite puis achten cela cet intérieur Contrôle qui Rahmenlinien pas überschreibt (positionieren). là cela äußere Contrôle pas scrollt bleibt qui cadre-effet alors intact.
l'intérieur Contrôle sollte ensuite entier rahmenlos son, avec cela pas auffällt que voici plusieurs Controls geschachtelt sommes.
Selbst Microsoft verwendet solche geschachtelten Controls...

belle Grüße
Michael Wodrich
 
Programmieren, das spannendste Detektivspiel der Welt.
12.08.2006  
 




rainerhoefs
allô Michael,

si Je l' Source de iF richtig lese, wird d'abord une Listbox gezeichnet, qui une cadre hat. ensuite wird y un Static gezeichnet, cela wahrscheinlich aussi une cadre hat, et ensuite wird nochmal un Stati cauf cela Static gesetzt. j'ai déjà avec alle Stilen herumprobiert, qui Sprung belibt. aussi si on qui Positionierung qui Statics dedans qui Listbox ändert, springt cela Bild. Es billet ici aucun Solution trop donner.

Rainer
 
12.08.2006  
 




Rolf
Koch
et si Du es avec einem Browser versuchst?
Hab grad la fois vite avec ROC un Webbrowser erstellt et là z.B. une übergrosse BMP angezeigt. Butterweiches Scrollen arrêt comment ici im Forum
 
12.08.2006  
 




rainerhoefs
allô Rolf,

soll je maintenant zugeben le moi trop blöd suis den phrase avec dem Browser tout de suite dans Source umzusetzen.

oui doit je wohl.

peux du voilà quelque chose konkreter volonté?

merci

Rainer
 
12.08.2006  
 




Jörg
Sellmeyer
ici quoi aus meinem Archiv. je crois de Uwe Pascal Niemeyer:
KompilierenMarqueSéparation
 $H Windows.ph
Window 0,0-930,900
Usermessages 16
Def Atlaxwininit(0) !atl.dll,AtlAxWinInit
Def Atlaxcreatecontrol(4) !atl.dll,AtlAxCreateControl
Declare Atl&,Web&,A$
Atl&=Usedll(atl.dll)
Atlaxwininit()
A$=File:///C:MeinBildmitPfad.jpg
Web&=Control(AtlAxWin,A$,$50300000,00,0,920,550,%Hwnd,0,0,$200)-HTML-Contol anlegen

While 1

    Waitinput
    Case %Umessage=16:Break

Endwhile

Destroywindow(Web&)
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
12.08.2006  
 




répondre


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

8.468 Views

Untitledvor 0 min.
Peter Max Müller27.10.2017
Andre Rohland06.10.2015
Michael Borowiak30.11.2014
Manfred Barei08.06.2014

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