Français
Forum

Objekte Déplacer

 
- page 1 -



Thomas
Freier
Aider, nouveau Problem et je viens pas plus.

si je une vertical Text éditer veux, bleibt cela EDIT seulement conservé, si qui Droit am Exact Match erfolgt ou bien qui Bouton de la souris gehalten et qui Curser ins EDIT gezogen wird. comment peux cela behoben volonté?
KompilierenMarqueSéparation
DEF GetSysColor(1) !"USER32","GetSysColor"
Def WindowFromPoint(2)!"USER32","WindowFromPoint"
Def GetCursorPos(1) !"USER32","GetCursorPos"
Declare p#,h&
Dim p#,8
'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Def GetTextExtentPoint32(4) !"GDI32","GetTextExtentPoint32A"
Def ReleaseDC(2) !"USER32","ReleaseDC"
Def GetDC(1) !"USER32","GetDC"
declare x%,y%

Proc GetTextExtent

    Parameters _t$,_w%
    declare _size#,_text#,_result&,_hdc&
    dim _text#,Len(_t$) + 1
    dim _size#,8
    String _text#,0 = _t$
    _hdc& = GetDC(GetActiveWindow())
    GetTextExtentPoint32(_hdc&,_text#,Len(_t$),_size#)
    _result& = Long(_size#,4)
    Case _w% : _result& = Long(_size#,0)
    ReleaseDC(GetActiveWindow(),_hdc&)
    dispose _text#
    dispose _size#
    return _result&

EndProc

'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Def @Clienttoscreen(2) !"USER32","ClientToScreen"
Def @G2lx(0) @Long(C2sstrc#,0)
Def @G2ly(0) @Long(C2sstrc#,4)

Proc G2l

    Parameters Hdl&
    Clear C2sstrc#
    @Clienttoscreen(%Hwnd,C2sstrc#)
    x%=@G2lx()
    y%=@G2ly()
    Clear C2sstrc#
    @Clienttoscreen(Hdl&,C2sstrc#)
    x%=@G2lx()-x%
    y%=@G2ly()-y%

Endproc

Declare C2sstrc#
Dim C2sstrc#,8
'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

SubClassProc

    case  SubClassMessage(h&, $201):    PostMessage(h&, $A1, $2, 0)

Endproc

'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Window 1000,600
WindowTitle "Objekte bewegen"
UseFont "Arial",16,0,0,0,0
var LV_Font&=CreateFont("Arial",15,0,0,0,0)
SETDIALOGFONT LV_Font&
Declare b.obj&[],b.x%[],b.x1%[],b.y%[],b.y1%[], b.text$[],b.lage$[]
Declare b.xn%
Declare pic1&
DrawPic "Hemmelsdorf.png",0,0;0
DrawText 10,10,"Verschieben nach Doppelklick links; " +
"NEU (Ändern) : Rechtsklick freie Fläche (Text)....  mit RETURN oder Klick ins Fenster übernehmen."
b.xn%=1
b.x%[b.xn%]=720
b.y%[b.xn%]=140
b.text$[b.xn%]="K. Mustermann"
b.lage$[b.xn%]="W"
Boot_obj b.xn%
Subclass b.obj&[b.xn%],1
b.xn%=2
b.x%[b.xn%]=448
b.y%[b.xn%]=320
b.text$[b.xn%]="E. Wassermann"
b.lage$[b.xn%]="S"
Boot_obj b.xn%
Subclass b.obj&[b.xn%],1
b.xn%=2

While 1

    WaitInput
    Case %key=2:Break

    Whileloop b.xn%

        G2l b.obj&[&loop]
        b.x%[&loop]=x%
        b.y%[&loop]=y%

    EndWhile

    GetCursorPos(p#)
    h&=WindowFromPoint(Long(p#,0),Long(p#,4))
    Locate 0,0

    if %MouseKey=2

        x%=1

        Whileloop b.xn%' Anzahl der Objekte

            if Mouse(b.x%[&loop],b.y%[&loop] - (b.x%[&loop]+b.x1%[&loop]),(b.y%[&loop]+b.y1%[&loop]))

                ShowWindow(b.obj&[&loop],0)
                Element_Edit  &loop' EDIT-Feld
                Subclass b.obj&[&loop],1
                x%=0
                break

            endif

        wend

        if x%=1

            inc b.xn%
            b.x%[b.xn%]=%MouseX
            b.y%[b.xn%]=%MouseY
            b.text$[b.xn%]=""
            b.lage$[b.xn%]="W"
            Element_Edit b.xn%
            Subclass b.obj&[b.xn%],1

        endif

    endif

    SetFocus(%HWND)

EndWhile

DeleteObject LV_Font&
DeleteObject pic1&

Whileloop b.xn%

    Subclass b.obj&[&loop],0

EndWhile

Dispose C2sstrc#
Dispose p#
End

Proc Boot_obj

    Parameters b.xi%
    UseFont "Arial",(16+2),0,0,0,0
    GetTextExtent b.text$[b.xi%],1'Textlänge
    b.x1%[b.xi%] = &(0)+0'Länge
    GetTextExtent b.text$[b.xi%],0
    b.y1%[b.xi%] = &(0)+4'Höhe

    If trim$(b.lage$[b.xi%]="S")'Länge+Höhe tauschen bei senkrecht

        x%=b.y1%[b.xi%]
        b.y1%[b.xi%]=b.x1%[b.xi%]
        b.x1%[b.xi%]=x%

    endif

    MCls b.x1%[b.xi%], b.y1%[b.xi%] ,RGB(255,255,255)
    StartPaint -1
    TextColor @RGB(0,0,160), -1

    If trim$(b.lage$[b.xi%]="W")

        Set("Orientation", 0)
        UseFont "Arial",16,0,0,0,0
        DrawText 0, 2, b.text$[b.xi%]

    ElseIf trim$(b.lage$[b.xi%]="S")

        Set("Orientation", 2700)
        UseFont "Arial",(16-1),0,0,0,0
        DrawText b.x1%[b.xi%]-2, 0, b.text$[b.xi%]

    Endif

    Endpaint
    Set("Orientation", 0)
    pic1&=Create("hPic",0,"&MEMBMP" )
    b.obj&[b.xi%]=Control("DIALOG","",$54001100,b.x%[b.xi%], b.y%[b.xi%], b.x1%[b.xi%], b.y1%[b.xi%],%hwnd,0,%hinstance,$0)
    Create("Bitmap",b.obj&[b.xi%], pic1&,0, 0)

Endproc

Proc Element_Edit

    Parameters b.xi%
    var Element&= CreateEdit(%hwnd,b.text$[b.xi%],b.x%[b.xi%], b.y%[b.xi%], 120, 22)
    SetFont Element&,LV_Font&
    var Element1&=Create("GroupBox",%hwnd,"",(b.x%[b.xi%]+124), (b.y%[b.xi%]-8),80,30)
    CreateText(Element1&,"",2,10,76,18)
    var hor&=Create("RadioButton",%hwnd,"",(b.x%[b.xi%]+126),(b.y%[b.xi%]+5),12,12)
    var t1&=CreateText(Element1&,"0°",18,11,14,16)
    var sen&=Create("RadioButton",%hwnd,"",(b.x%[b.xi%]+166),(b.y%[b.xi%]+5),12,12)
    var t2&=CreateText(Element1&,"90°",56,11,22,16)
    SetFont hor&,LV_Font&
    SetFont t1&,LV_Font&
    SetFont t2&,LV_Font&

    If trim$(b.lage$[b.xi%]="W")

        SetCheck hor&,1

    else

        SetCheck sen&,1

    EndIf

    Setfocus(Element&)
    SendString(Element&,"+({END})")'Text Markieren und Cursor ans Ende
    Setfocus(Element&)

    While 1

        GetMessage

        If GetFocus(%hwnd)

            b.text$[b.xi%] = GetText$(Element&)

            If GetCheck(hor&)

                b.lage$[b.xi%]="W"

            Else

                b.lage$[b.xi%]="S"

            EndIf

            BREAK

        Elseif IsKey(13) OR IsKey(27)

            b.text$[b.xi%] = GetText$(Element&)

            If GetCheck(hor&)

                b.lage$[b.xi%]="W"

            Else

                b.lage$[b.xi%]="S"

            EndIf

            BREAK

        endif

    wend

    DestroyWindow(Element&)
    DestroyWindow(Element1&)
    DestroyWindow(hor&)
    oyWindow(sen&)
    Boot_obj b.xi%' Texte de l'objet récente

ENDPROC


35 kB
Hochgeladen:03.07.2010
Downloadcounter184
Download
 
Gruß Thomas
Windows XP SP2, XProfan X2
02.07.2010  
 



 
- page 1 -



Jörg
Sellmeyer
Ist très cool (jusqu'à sur qui Tatsache, qui je par Deinen Code wieder pas montée...)
Doit je mir la fois de XPSE traduire laisser. peux Du pas qui Community une Option spendieren, qui XPSE-Code pour Profan traduit wird?

chez Double-cliquez sur sur un objet gibt es incidemment une Absturz. Allerdings seulement, après que je es déménagé habe.
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
21.07.2010  
 



Relatif à la Double-cliquez sur ist richtig, là fehlt un si objet = vom typ text - Voir le texte source devrait seulement plus étendu volonté.

>> Profan traduit wird

prends den Code doch s'il te plaît comment il est, quelle Stelle ist car inintelligible?
 
21.07.2010  
 




Jörg
Sellmeyer
Ist déjà ok - je hab gar pas tour gedacht, qui Profan oui maintenant aussi Variablen sans Postfix kennt.
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
21.07.2010  
 




Thomas
Freier
oui cool, et je hatte déjà lourd Nourriture alà "IFDRW V0.0.1" erwartet.
je peux chez qui korell.exe aucun Objekte Déplacer. cela Croix erscheint, mais aucun weitere réaction.
qui Abstürze einmal außeracht gelassen.
si ego im Profancode mise en œuvre habe, nehme je mir cela prochain semaine avant ou bien im Urlaub, si aucun Laxe chez cette températures de l'eau aufsteigen.
 
Gruß Thomas
Windows XP SP2, XProfan X2
22.07.2010  
 



allô Thomas,

si es chez Dir abstürzt - ausser chez Double-cliquez sur sur autre chose comme Text - ensuite serait je seulement qui Bug trouver voulons.

Ebenso devrait sich qui Objekte avec qui souris simple Déplacer laisser.

si cela chez Dir pas funzt, ensuite wüsste je volontiers, weshalb bzw. quoi oui c'est ca là de travers fonctionne.

>> si ego im Profancode mise en œuvre habe,

Eigentlich voulais je Dir travail décroître et hatte Dir tambour den Text peint. ^ ^..
 
22.07.2010  
 



 
- page 2 -



Thomas
Freier
allô iF,
qui "Neubau" hat uns oui à cette Stelle unterbrochen.
alors, avec qui Koroll.exe peux je seulement neue Objekte erstellen mais aucun bewegen (gif).
alors, script versucht trop starten et là den XProfan Compiler par XPSE ersetzt. Ist cela Richtig?. malheureusement venez juste qui annonce: "Definition im En-tête fehlt: GETSCROLLPOS(" .
ici ensuite pour XPSE gesucht et pas trouvé. comment mach je alors plus?

158 kB
Hochgeladen:06.08.2010
Downloadcounter118
Download
 
Gruß Thomas
Windows XP SP2, XProfan X2
06.08.2010  
 



> alors, avec qui Koroll.exe peux je seulement neue Objekte erstellen mais aucun bewegen (gif).

tu peux Objekte simple per Bouton de la souris anfassen et Déplacer - hat bisher sur keinen meiner ordinateur pas funktioniert. Sollte cela chez Dir pas marcher ensuite läge mir absolument quelque chose daran trop savons quoi chez Dir de travers fonctionne. qui Objekte peut aussi animiert son - qui Engine beliebig trop erweitern biete je Dir volontiers à. (Mir mais momentan orteil assez wehtut)

> alors, script versucht trop starten et là den XProfan Compiler par XPSE ersetzt. Ist cela Richtig?

sur keinen le cas!

on kopiert xpse simple ins XProfanverzeichnis wohin aussi z.B. qui profan.exe et XProfan-Kompiler liegen et dans qui IDE gibt on XPSE comme Kompiler à ou bien on stellt ihn comme Werkzeug un. Aufruf entier normal xpse.exe quelltext.fichier. de XProfan ersetzt wird là rien et rien überschrieben, XPSE gibt doch sa verrichtetet travail à den XProfan-Kompiler plus weshalb cette pas manquer darf. (quoi XPSE mais aussi anmeckert si ne...aucune XProfan-Kompiler trouvé...)
 
09.08.2010  
 



Nachtrag vom Handy ausm Bett hehe: xpse hat sa feste Adresse sous  [...]  et ist aussi chez den Helfern pour trouver.
 
09.08.2010  
 




Thomas
Freier
iF, seulement einmal flotte Genesung.
Objekte Déplacer ist de meiner page sur den Herbst vertagt. Hat alors Zeit!
Werde es plus testen comme venez. je peux sur meinen Laptops avec XP SP2 ne...aucune objet Déplacer. Es venez cela Curserkreuz, cela objet hat den Concentrer et cela war's. Merkwürdiger Weise habe je sous XP Tablet aucun Abstürze. là peux je zigmal Objekte aktivieren et versuchen vous trop Déplacer, récente anlegen, Text changement et effacer.
Eigentlich sommes deine Programme doch neutral. ici verstehe je qui PC-monde pas plus.
XPSE J'ai eu zwischenzeitlich trouvé et qui dernier Version dans den XProfan11 - Dossier kopiert.
 
Gruß Thomas
Windows XP SP2, XProfan X2
10.08.2010  
 



>> iF, seulement einmal flotte Genesung.

merci, brauche je wirklich.

>> je peux sur meinen Laptops avec XP SP2 ne...aucune objet Déplacer.

Verstehe et kurios, hatte es sur XP SP2 programmiert - den faute trouver wir mais bestimmt.

>> Es venez cela Curserkreuz, cela objet hat den Concentrer et cela war's.

Schonmal bien weil qui "Focus" ebenso gemalt ist.

>> Merkwürdiger Weise habe je sous XP Tablet aucun Abstürze.
>> Eigentlich sommes deine Programme doch neutral. ici verstehe je qui PC-monde pas plus.

là wären 2 Dinge qui je mir so im Hinterkopf comme vlt. "verantwortlich" erkläre - si je meinen Programmier-PC wieder sous den Fingern habe peut wir vlt. testen.
 
10.08.2010  
 




Thomas
Freier
iF, cela hat Zeit. suis de toute façon maintenant quelques Wochen sans Internet sur nördlicheren Spielwiesen:  [...]  et  [...]  .
et si du avec deinem Luna-Mobil spielst, sei nächstes la fois vorsichtiger ou bien ziehe Sicherheitsschuhe à.
 
Gruß Thomas
Windows XP SP2, XProfan X2
10.08.2010  
 



merci!
 
10.08.2010  
 




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

13.672 Views

Untitledvor 0 min.
Thomas Zielinski07.04.2021
Peter Max Müller02.11.2017
RudiB.15.03.2016
ByteAttack05.08.2015
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