Español
Foro

Erste/letzte Position en Medit

 

Timotheus
¡Hola,

Yo bin neu hier, y habe una Problema.

Yo habe una MultieditBox por Control con un waagerechten Scrollbalken producido.
Dann Yo me el otro incluso dran gebastelt, y en el möchte Yo entonces reagieren.
Jetzt muss Yo aber wissen si el Cursor en el Medit al Anfang, al Ende oder bastante wo anders es, porque Yo sí el Scrollbalken größer oder kleiner hacer muss, si alguien el Entfernen Taste en el letzten Position drückt, oder en el ersten el Rückgängig Taste.

Como krieg Yo el fuera?

Timo
 
27.08.2004  
 




Michael
Dell
Hi,

el Multiedit producido el deseado Scrollbalken incluso,
allerdings sólo si él benötigt se!

Usted necesidad also no extra.

Demo:
declarar med01&
cls
med01& = @Crear("MultiEdit",%HWnd,"",20,20,600,400)
SetFocus(med01&)
SendKey(med01&,35)
Sleep 1000

WhileLoop 0,30,1

    SendString(med01&,"Test1 Test1 Test1 Test1 Test1 Test1 Test1 Test1 Test1 Test1 Test1 Test1 ")
    SendString(med01&,"Test2 Test2 Test2 Test2 Test2 Test2 Test2 Test2 Test2 Test2 Test2 Test2{ENTER}")

EndWhile

SendString(med01&,"{ENTER}Test- Beendet!!!!{ENTER}")

Sinestar encargado Equ(%Key,2) Or Equ(%Key,27)

    WaitInput

EndWhile

End
Saludo

Michael
 
Salu Michael...

Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! 
28.08.2004  
 




Timotheus
¡Hola Michael,

Mit el MultiEdit gehts sí no, porque Yo möchte el rechten Scrollbalken selber erzeugen, así I ihn reagieren kann, y el va glaube Yo sólo Control. Und el ScrollB muss el se en efecto bastante normal comportamiento puede, y deshalb muss Yo alles qué Windows sonst macht, selber hacer !

Und como bekomme Yo el con el ersten y letzten Position fuera?

Timo
 
28.08.2004  
 




Michael
Dell
¡Hola Timotheus,

du kannst auch por SendMessage el Cursor- Position ermitteln y lo son auch Messages para el Scrollbalken.

Cursorpos en el MultiEdit: (Autor: Uwe „Pascal“ Niemeier [...] )
**********************************
window 50,50-500,300
declarar Editar%,Línea%,Signo%,Gesamt&
let Editar%=createmultiedit(%hwnd,"",50,50,200,200)

mientras que 1

    getmessage
    sendmessage(Editar%,176,addr(Gesamt&),0)
    locate 1,1
    let Signo%=sub(Gesamt&,sendmessage(Editar%,187,-1,0))
    let Línea%=sendmessage(Editar%,201,-1,0)
    locate 1,1
    imprimir "Der Cursor befindet se hinter Zeichen",Signo%,"in Zeile",Línea%,"   "

endwhile

**********************************
Hier un hilo el dir auch todavía helfen kann: [...] 

Saludo

Michael
 
Salu Michael...

Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! 
28.08.2004  
 




Timotheus
Gracias,

el es genau el Yo meinte!

Aber könntest du auch todavía esta Scrollbalken Messages escribir. Weil entonces bräuchte Yo auch no alles incluso hacer, y podría simplemente el rechten Scrollbalken abfragen.

Timo
 
29.08.2004  
 




Michael
Dell
Como gibst ya una schönes Ejemplo de Andreas Miethes - Control.hlp:
Scroll- Beipiel de Control.hlp
Autor: Andreas Miethe
HP:    http://www.ampsoft.de (Control.exe)
Scroll- Messages
NAME                  WERT     PARAMETER
SBM_SETPOS            $00E0    N3 = Position , N4 = Neuzeichnen (1) oder nein(0)
SBM_GETPOS            $00E1    N3=0,  N4=0
SBM_SETRANGE          $00E2    N3=Minimum , N4=Maximum
SBM_SETRANGEREDRAW    $00E6
SBM_GETRANGE          $00E3    N3=Minimum , N4=Maximum
SBM_ENABLE_ARROWS     $00E4
SBM_SETSCROLLINFO     $00E9
SBM_GETSCROLLINFO     $00EA
Declarar Ende%,ScrollHorz%,Scrollvert%,Button%
Declarar ScrollHX%,ScrollHY%,ScrollWX%,ScrollWY%
Declarar ButtonrangeX%,ButtonrangeY%
Declarar Buttonx%,Buttony%,Buttonh%,Buttonw%
settruecolor 1
cls rgb(192,192,192)
Let Buttonx% = 10                          links oben
Let Buttony% = 60                          rechts oben
Let Buttonh% = 24                          Hoehe
Let Buttonw% = 80                          Breite
Let ButtonrangeX% = sub(width(%hwnd),130)  a hierhin darf se el Button en X bewegen
Let ButtonrangeY% = sub(height(%hwnd),30)  a hierhin darf se el Button en Y bewegen
Let ScrollHX% = 0                          links Scrollbar Horizontal
Let ScrollHY% = sub(Width(%hwnd),20)       Breite Scrollbar Horizontal
Let ScrollWX% = sub(Width(%hwnd),20)       oben Scrollbar Vertikal
Let ScrollWY% = sub(Height(%hwnd),20)      Hoehe Scrollbar Vertikal
Let ScrollHorz% = @Control("Scrollbar","",$50000000,0,0,ScrollWX%,20,%hwnd,1000,%Hinstance)
Let ScrollVert% = @Control("Scrollbar","",$50000001,ScrollHY%,20,20,ScrollWY%,%hwnd,1001,%Hinstance)
Let Button% = @Control("Button","Ende",$50008000,Buttonx%,Buttony%,Buttonw%,Buttonh%,%hwnd,1002,%Hinstance)
SendMessage(ScrollHorz%,$00E2,ButtonX%,ButtonrangeX%)  Scrollweite para Scrollbar horizontal
SendMessage(ScrollVert%,$00E2,ButtonY%,ButtonrangeY%)  Scrollweite para Scrollbar vertikal
Let ende%=0

whilenot ende%

    Waitinput

    if getfocus(Button%)

        Let Ende%=1

    Endif

    Buttonposition adaptar
    setwindowpos Button% = SendMessage(ScrollHorz%,$00E1,0,0),SendMessage(Scrollvert%,$00E1,0,0)-80,24;0

wend

End
© Andreas Miethe , Bielefeld , 1998
Hier se una Button mittels Scrollbalken movido!

Wo du el Control.hlp findest es en el Ejemplo como el deseado Messages.

P.S.: Wenn du veces otra vez Beipiele suchts una tolle sortierte Linkliste findest du hier: [...] 

Sodele. Hoffe el hilft!

Schönen Sonntag Euch allen...

Michael
 
Salu Michael...

Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! 
29.08.2004  
 




Timotheus
Es no bastante el Yo búsqueda. Eigentlich weiß Yo ahora ya alles.
Aber hay una Möglichkeit el rechten Scrollbalken en uno Multiedit(oder Control) abzufragen? Dann bräuchte Yo no siempre alles abzufragen y a positionieren si en el Multiedit algo eingegeben se

Timo
 
29.08.2004  
 




Michael
Dell
Ok,

y nochn Ejemplo:
Autor: Michael Dell
ScrollBar Min, Max y Pos  Info
Def gScrollPos(2)   !"user32.dll","GetScrollPos"
Def gScrollRange(4) !"user32.dll","GetScrollRange"
Declarar med01&,scrMin&,scrMax&
Aktuelle Position des Scrollbalken
gScrollPos(hndl&,0)             SB_HORZ = 0
gScrollPos(hndl&,1)             SB_VERT = 1

Proc gScrollMinMax

    Min y Max el Scrollbar ermittel
    Parámetros hndl&,HorVer%          HorVer%=0 -> Horizontal / HorVer%=1 -> Vertikal
    gScrollRange(hndl&,HorVer%,Addr(scrMin&),Addr(scrMax&))

ENDPROC

Proc ZeigeScrollMinMaxPos

    Parámetros HorVer%
    gScrollMinMax(med01&,HorVer%)

    If HorVer%

        MessageBox(Add$(Add$(Add$("Min=",Str$(scrMin&)),Add$("  Max=",Str$(scrMax&))),Add$("  Pos=",Str$(gScrollPos(med01&,HorVer%)))),"Vertikal (Min Max Pos):",0)

    Más

        MessageBox(Add$(Add$(Add$("Min=",Str$(scrMin&)),Add$("  Max=",Str$(scrMax&))),Add$("  Pos=",Str$(gScrollPos(med01&,HorVer%)))),"Horizontal (Min Max Pos):",0)

    EndIf

    SetFocus(med01&)

ENDPROC

cls
med01& = @Crear("MultiEdit",%HWnd,"",20,20,600,400)
SetFocus(med01&)
SendKey(med01&,35)

WhileLoop 0,30,1

    SendString(med01&,"Test1 Test1 Test1 Test1 Test1 Test1 Test1 Test1 Test1 Test1 Test1 Test1 ")
    SendString(med01&,"Test2 Test2 Test2 Test2 Test2 Test2 Test2 Test2 Test2 Test2 Test2 Test2{ENTER}")

EndWhile

SendString(med01&,"{ENTER}Test- Beendet!!!!{ENTER}")
ZeigeScrollMinMaxPos 0
ZeigeScrollMinMaxPos 1

Sinestar encargado Equ(%Key,2) Or Equ(%Key,27)

    WaitInput
    ZeigeScrollMinMaxPos 0
    ZeigeScrollMinMaxPos 1

EndWhile

End
Sodele, el wärs... :-P

Michael
 
Salu Michael...

Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! 
29.08.2004  
 




Timotheus
Yo habe ni neue Cuestión, y yo denke el ellos auch hier rein a letztn Fragen past:

Como kriege Yo el Zeilennummer el obersten Línea el en uno Multiedit a sehen está fuera?

Timo
 
26.09.2004  
 



¡Hola Timotheus...

So tal vez?
Windowstyle 31
Windowtitle "Erste sichtbare Línea en el Multiedit"
Ventana 0,0-640,440
Declarar EDIT&,Button&,Zeile&
LET EDIT&=@createmultiedit(%HWND,"",10,10,300,300)
LET BUTTON&=@CREATEBUTTON(%HWND,"Erste sichtbare Línea?",10,330,300,30)
ADDFONTS
@Movelisttoedit(EDIT&)

Mientras que 0=0

    Waitinput

    IF @GETFOCUS(Button&)

        LET ZEILE&=@SENDMESSAGE(EDIT&,$00CE,0,0) Index el Línea erfragen
        @MESSAGEBOX(@ADD$("Erste sichtbare Línea: ",@STR$(@int(ZEILE&+1))),"Ergebnis",64)

    ENDIF

wend

 
26.09.2004  
 




Michael
Dell
Hi Personas,

ausgehend de mi letzten Ejemplo, (Maximale Zeilenzahl + 1) - ScrollbalkenPos.
Como el Scrollbalken auch en su Größe el Anzeigbaren Zona en el Verhältnis para
gesamten Inhalt entspricht.

Saludo Michael...
 
Salu Michael...

Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! 
26.09.2004  
 




Timotheus
Gracias :biggrin:
 
26.09.2004  
 



Respuesta


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

5.094 Views

Untitledvor 0 min.
Ernst22.04.2016
RudiB.03.04.2016
Untitled26.05.2012
Untitled21.05.2012
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