Español
Foro

Editar Eingabe alphanum num alpha

 

Ernst
Editar-Eingabe einschränken en cierto gewünschte Signo, alphanumerisch, sólo Ziffern, sólo Buchstaben + sostige Signo
Var __edE& = 0' ( 0 = alphanumerisch / 1 = numerisch  / 2 = aplpha )
Var AlphaNum$="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ,.%()/ "' Eingabe eingeschränkt en vorhandene Signo

Proc Edit_EingabeAuswertung

    Declarar txt$

    Select InStr(right$(gettext$(Edit&),1),AlphaNum$)

        CaseOf  1,2,3,4,5,6,7,8,9,10

        IF __edE&=2

            txt$=left$(gettext$(Edit&),len(gettext$(Edit&))-1)
            settext Edit&, txt$
            sendmessage(Edit&,$B1,len(txt$),len(txt$))

        endif

        CaseOf > 10

        IF __edE&=1

            txt$=left$(gettext$(Edit&),len(gettext$(Edit&))-1)
            settext Edit&, txt$
            sendmessage(Edit&,$B1,len(txt$),len(txt$))

        endif

        otherwise
        txt$=left$(gettext$(Edit&),len(gettext$(Edit&))-1)
        settext Edit&, txt$
        sendmessage(Edit&,$B1,len(txt$),len(txt$))

    EndSelect

ENDPROC

' -----------------------------------------------------------
windowstyle 8 + 512
Ventana 200,200-500,300
CLS RGB(212,210,200)
Var Edit& = Crear("Edit",%hwnd,"",20,100,200,20)
setstyle Edit&,getstyle(Edit&) + $8
Var b_1&= Crear("Button",%hwnd,"alphanum",10,150,80,30)
Var b_2&= Crear("Button",%hwnd,"num",120,150,80,30)
Var b_3&= Crear("Button",%hwnd,"alpha",230,150,80,30)
Var txt_1& = Crear("TEXT",%hwnd,"alphanum",20,60,80,30)
Var txt_2& = Crear("TEXT",%hwnd,"",100,60,200,30)
setfocus(Edit&)

Mientras que 1

    Waitinput

    IF %key = 2

        romper

    ElseIf %key = 13

        settext txt_2&, gettext$(Edit&)
        setfocus(Edit&)
        settext Edit&, ""

    ElseIf clicked(b_1&)

        __edE& = 0
        settext txt_1&, "alphanum"
        setfocus(Edit&)
        settext Edit&, ""

    ElseIf clicked(b_2&)

        __edE& = 1
        settext txt_1&, "         num"
        setfocus(Edit&)
        settext Edit&, ""

    ElseIf clicked(b_3&)

        __edE& = 2
        settext txt_1&, "alpha"
        setfocus(Edit&)
        settext Edit&, ""

    EndIf

    Edit_EingabeAuswertung

EndWhile

 
26.04.2016  
 




RudiB.


klappt no tan bastante....aber sonst super...

22 kB
Hochgeladen:27.04.2016
Ladeanzahl150
Descargar
 
FreeProfan
Xprofan X4
Rudolf Beske / München

Hardware: NB Intel I9 - 16GByte RAM
27.04.2016  
 




Ernst
como es el en dir zustandegekommen ?
Yo hab's zig-veces durchprobiert (auch encima xpse) - no Fehler.
FreeProfan / FreeProfan Interpreter 0.9-32 (al Interpreter kann's doch no mentira)
hast irgendeine Vermutung qué faul es oder ser podría ??
 
27.04.2016  
 




funkheld
En me klappt lo fehlerfrei con XPSE.
XprofanX3

Liegt al Freeprofan.

Gruss
 
27.04.2016  
 



@ernst: Vmtl. strg+v etc.,

vlt. podría una usermessage wm_keydown = 256 Abhilfe schaffen,
a Not auch waitinput 333 testen.
 
27.04.2016  
 




Ernst
¡Hola If
Vermutlich = Bingo
sobald I, con strg+v más que una Buchstaben einfüge, se el letzte gelöscht, aber el otro son drin
como bekomm Yo, el Schmarren weg
con usermessage o. waitinput komme Yo no más

con iskey-Abfrage kann Yo el Einfügen por strg+v verhindern, aber z.B. no rechte Botón del ratón / einfügen
Var __edE& = 0' ( 0 = alphanumerisch / 1 = numerisch  / 2 = aplpha )
Var AlphaNum$="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ,.%()/ "' Eingabe eingeschränkt en vorhandene Signo

Proc Edit_EingabeAuswertung

    Declarar txt$

    Select InStr(right$(gettext$(Edit&),1),AlphaNum$)

        CaseOf  1,2,3,4,5,6,7,8,9,10

        IF __edE&=2

            txt$=left$(gettext$(Edit&),len(gettext$(Edit&))-1)
            settext Edit&, txt$
            sendmessage(Edit&,$B1,len(txt$),len(txt$))

        endif

        CaseOf > 10

        IF __edE&=1

            txt$=left$(gettext$(Edit&),len(gettext$(Edit&))-1)
            settext Edit&, txt$
            sendmessage(Edit&,$B1,len(txt$),len(txt$))

        endif

        otherwise
        txt$=left$(gettext$(Edit&),len(gettext$(Edit&))-1)
        settext Edit&, txt$
        sendmessage(Edit&,$B1,len(txt$),len(txt$))

    EndSelect

ENDPROC

' -----------------------------------------------------------
windowstyle 8 + 512
Ventana 200,200-500,300
CLS RGB(212,210,200)
Var Edit& = Crear("Edit",%hwnd,"",20,100,200,20)
setstyle Edit&,getstyle(Edit&) + $8
Var b_1&= Crear("Button",%hwnd,"alphanum",10,150,80,30)
Var b_2&= Crear("Button",%hwnd,"num",120,150,80,30)
Var b_3&= Crear("Button",%hwnd,"alpha",230,150,80,30)
Var txt_1& = Crear("TEXT",%hwnd,"alphanum",20,60,80,30)
Var txt_2& = Crear("TEXT",%hwnd,"",100,60,200,30)
setfocus(Edit&)
Var E_txt$ =""

Mientras que 1

    E_txt$ = gettext$(Edit&)
    Waitinput

    IF %key = 2

        romper

    ElseIf %key = 13

        settext txt_2&, gettext$(Edit&)
        setfocus(Edit&)
        settext Edit&, ""

    ElseIf clicked(b_1&)

        __edE& = 0
        settext txt_1&, "alphanum"
        setfocus(Edit&)
        settext Edit&, ""

    ElseIf clicked(b_2&)

        __edE& = 1
        settext txt_1&, "         num"
        setfocus(Edit&)
        settext Edit&, ""

    ElseIf clicked(b_3&)

        __edE& = 2
        settext txt_1&, "alpha"
        setfocus(Edit&)
        settext Edit&, ""

    EndIf

    IFnot iskey(17) & iskey(86)

        Edit_EingabeAuswertung

    Más

        settext Edit&, E_txt$
        sendmessage(Edit&,$B1,len(E_txt$),len(E_txt$))

    EndIf

EndWhile

 
27.04.2016  
 




Ernst
Yo denke Yo hab's hinbekommen
Var __edE& = 0' ( 0 = alphanumerisch / 1 = numerisch  / 2 = aplpha )
Var AlphaNum$="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ,.%()/ "' Eingabe eingeschränkt en vorhandene Signo
' -----------------------------------------------------------

Proc Edit_EingabeAuswertung

    Declarar txt$
    Var x% = 1

    Select __edE&

        CaseOf 0: txt$ = AlphaNum$

        CaseOf 1: txt$ = left$(AlphaNum$,10)

        CaseOf 2: txt$ = right$(Alphanum$,len(AlphaNum$)-10)

    EndSelect

    whileloop len(getclip$())

        IF InStr(mid$(getclip$(),x%,1),txt$) > 0

            inc x%

        Más

            clearclip
            romper

        EndIf

    EndWhile

    if InStr(right$(gettext$(Edit&),1),txt$) = 0

        txt$=left$(gettext$(Edit&),len(gettext$(Edit&))-1)
        settext Edit&, txt$
        sendmessage(Edit&,$B1,len(txt$),len(txt$))

    endif

ENDPROC

' -----------------------------------------------------------
windowstyle 8 + 512
Ventana 200,200-500,300
CLS RGB(212,210,200)
Var Edit& = Crear("Edit",%hwnd,"",20,100,200,20)
setstyle Edit&,getstyle(Edit&) + $8
Var b_1&= Crear("Button",%hwnd,"alphanum",10,150,80,30)
Var b_2&= Crear("Button",%hwnd,"num",120,150,80,30)
Var b_3&= Crear("Button",%hwnd,"alpha",230,150,80,30)
Var txt_1& = Crear("TEXT",%hwnd,"alphanum",20,60,80,30)
Var txt_2& = Crear("TEXT",%hwnd,"",100,60,200,30)
setfocus(Edit&)

Mientras que 1

    Waitinput

    IF %key = 2

        romper

    ElseIf %key = 13

        settext txt_2&, gettext$(Edit&)
        setfocus(Edit&)
        settext Edit&, ""

    ElseIf clicked(b_1&)

        __edE& = 0
        settext txt_1&, "alphanum"
        setfocus(Edit&)
        settext Edit&, ""

    ElseIf clicked(b_2&)

        __edE& = 1
        settext txt_1&, "         num"
        setfocus(Edit&)
        settext Edit&, ""

    ElseIf clicked(b_3&)

        __edE& = 2
        settext txt_1&, "alpha"
        setfocus(Edit&)
        settext Edit&, ""

    EndIf

    Edit_EingabeAuswertung

EndWhile

 
28.04.2016  
 



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

7.413 Views

Untitledvor 0 min.
H.Brill13.11.2022
Walter30.03.2019
Ernst10.04.2017
rquindt18.11.2016
Más...

Themeninformationen

Dieses Thema ha 4 subscriber:

Ernst (4x)
iF (1x)
RudiB. (1x)
funkheld (1x)


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