Español
SKControl.DLL

Reihenfolge el Aktivierung de SKControl Edits

 
- Página 1 -



Stephan
Sonneborn
¡Hola zusammen,

Yo tener en un Programa farbige Edits mittels el SKControl.DLL erstellt. Como el hier erzeugten Handles no "normalen" Handles son, pero "normale" Handles en una Elternhandle, tener Yo Problemas con el Aktivierungsreihenfolge.

Weiß alguien, cómo entonces el Reihenfolge el Aktivierung beeinflussen oder mittels Enter (al liebsten) oder TAB de una Editar-Feld en el nächste wechseln kann?

BringWindowToTop() tener Yo zwar intenta, aber no Erfolg así gehabt.
KompilierenMarcaSeparación
DEF GetWindow(2) !"USER32","GetWindow"
DEF SK_GETFOCUS(1)  GetWindow(&(1),5)
VAR PrgDir$ = GETDIR$("@")
VAR LVDLL&  = USEDLL(PrgDir$ + "\\SKControl.dll")
 $I SKCONTROL.INC
SKCtrl_InitDll()

PROC CreateEditCL

    PARAMETERS ParentHandle&, Text$, x%, y%, dx%, dy%, TColor&, BColor&
    DECLARE Handle&
    DECLARE SKString#
    DIM SKString#, 255
    STRING SKString#, 0 = Text$
    Handle& = SKCtrl_CreateColorEdit(ParentHandle&,SKString#,Tcolor&,BColor&,x%,y%,dx%,dy%,%hInstance)
    SETSTYLE SK_GETFOCUS(Handle&), 0,  GETSTYLE(SK_GETFOCUS(Handle&)) + $0000
    DISPOSE SKString#
    RETURN Handle&

ENDPROC

CLS
VAR Edit1& = CreateEditCL(%HWND, "Hier 0 eingeben für ENDE", 10,10,200,20,0,RGB(255,0,0) )
VAR Edit2& = CreateEditCL(%HWND, "", 10,40,200,20,0,RGB(205,0,0) )
VAR Edit3& = CreateEditCL(%HWND, "", 10,80,200,20,0,RGB(155,0,0) )
VAR Edit4& = CreateEditCL(%HWND, "", 10,120,200,20,0,RGB(105,0,0) )

WHILE 1

    WAITINPUT
    CASE GETTEXT$(SK_GETFOCUS(Edit1&)) = "0": BREAK

WEND

SKCtrl_DeInitDll()
FIN
 
Schöne Grüße aus Wittgenstein
von Stephan

Programmierumgebung:| XProfan X4 | WIN10 | AMD FX6100 3,3 GHz
24.05.2011  
 



« Dieser Contribución wurde como Solución gekennzeichnet. »


Andreas
Miethe


Versuch's veces así
KompilierenMarcaSeparación
 $H Windows.ph
DEF GetWindow(2) !"USER32","GetWindow"
DEF SK_GETFOCUS(1)  GetWindow(&(1),5)
VAR PrgDir$ = GETDIR$("@")
VAR LVDLL&  = USEDLL(PrgDir$ + "\\SKControl.dll")
 $I SKCONTROL.INC
SKCtrl_InitDll()

PROC CreateEditCL

    PARAMETERS ParentHandle&, Text$, x%, y%, dx%, dy%, TColor&, BColor&
    DECLARE Handle&
    DECLARE SKString#
    DIM SKString#, 255
    STRING SKString#, 0 = Text$
    Handle& = SKCtrl_CreateColorEdit(ParentHandle&,SKString#,Tcolor&,BColor&,x%,y%,dx%,dy%,%hInstance)
    SETSTYLE SK_GETFOCUS(Handle&), 0,  GETSTYLE(SK_GETFOCUS(Handle&)) + $0000
    DISPOSE SKString#
    RETURN Handle&

ENDPROC

CLS
VAR Edit1& = CreateEditCL(%HWND, "", 10,10,200,20,0,RGB(255,0,0) )
SetStyle Edit1&, GetStyle(Edit1&) | ~WS_GROUP
VAR Edit2& = CreateEditCL(%HWND, "", 10,40,200,20,0,RGB(205,0,0) )
VAR Edit3& = CreateEditCL(%HWND, "", 10,80,200,20,0,RGB(155,0,0) )
VAR Edit4& = CreateEditCL(%HWND, "", 10,120,200,20,0,RGB(105,0,0) )
VAR HEnde% = Create("BUTTON", %HWND, "Ende", 10,200,200,25)
VAR Ende%  = 0
VAR i%     = 0
AddHotKey  1000, $09, 0
AddHotKey  1001, $0D, 0

WHILENOT Ende%

    WAITINPUT

    If IsKey($09) Or IsKey($0D)

        SetFocus(~GetNextDlgGroupItem(%hwnd,%Getfocus,0))

    Endif

    IF CLICKED(HEnde%)

        Ende% = 1

    ENDIF

WEND

SKCtrl_DeInitDll()
../../function-references/XProfan/end/'>FIN
 
Gruss
Andreas
________ ________ ________ ________ _
Profan 3.3 - XProfanX2
Win 95,98,ME,2000,XP,Vista - Win 7 32 / 64 Bit
ASUS X93S - Intel Core I7-NVIDIA GForce 540M 8GB Arbeitsspeicher
Homepage :  [...] 
24.05.2011  
 



Bekommst Usted WaitInput a el Punto con Enter durchbrochen?
 
24.05.2011  
 




Stephan
Sonneborn
Hola si,

IF (24.05.11)

Bekommst Usted WaitInput a el Punto con Enter durchbrochen?


desafortunadamente nein...
KompilierenMarcaSeparación
DEF GetWindow(2) !"USER32","GetWindow"
DEF SK_GETFOCUS(1)  GetWindow(&(1),5)
VAR PrgDir$ = GETDIR$("@")
VAR LVDLL&  = USEDLL(PrgDir$ + "\\SKControl.dll")
 $I SKCONTROL.INC
SKCtrl_InitDll()

PROC CreateEditCL

    PARAMETERS ParentHandle&, Text$, x%, y%, dx%, dy%, TColor&, BColor&
    DECLARE Handle&
    DECLARE SKString#
    DIM SKString#, 255
    STRING SKString#, 0 = Text$
    Handle& = SKCtrl_CreateColorEdit(ParentHandle&,SKString#,Tcolor&,BColor&,x%,y%,dx%,dy%,%hInstance)
    SETSTYLE SK_GETFOCUS(Handle&), 0,  GETSTYLE(SK_GETFOCUS(Handle&)) + $0000
    DISPOSE SKString#
    RETURN Handle&

ENDPROC

CLS
VAR Edit1& = CreateEditCL(%HWND, "", 10,10,200,20,0,RGB(255,0,0) )
VAR Edit2& = CreateEditCL(%HWND, "", 10,40,200,20,0,RGB(205,0,0) )
VAR Edit3& = CreateEditCL(%HWND, "", 10,80,200,20,0,RGB(155,0,0) )
VAR Edit4& = CreateEditCL(%HWND, "", 10,120,200,20,0,RGB(105,0,0) )
VAR HEnde% = Create("BUTTON", %HWND, "Ende", 10,200,200,25)
VAR Ende%  = 0
VAR i%     = 0

WHILENOT Ende%

    WAITINPUT
    i% = i% + 1

    IF CLICKED(HEnde%)

        Ende% = 1

    ENDIF

    LOCATE 12,1
    PRINT i%

WEND

SKCtrl_DeInitDll()
FIN
 
Schöne Grüße aus Wittgenstein
von Stephan

Programmierumgebung:| XProfan X4 | WIN10 | AMD FX6100 3,3 GHz
24.05.2011  
 



Probiere veces:
KompilierenMarcaSeparación
addhotkey 1234,13,0
>
 
24.05.2011  
 




Andreas
Miethe


Versuch's veces así
KompilierenMarcaSeparación
 $H Windows.ph
DEF GetWindow(2) !"USER32","GetWindow"
DEF SK_GETFOCUS(1)  GetWindow(&(1),5)
VAR PrgDir$ = GETDIR$("@")
VAR LVDLL&  = USEDLL(PrgDir$ + "\\SKControl.dll")
 $I SKCONTROL.INC
SKCtrl_InitDll()

PROC CreateEditCL

    PARAMETERS ParentHandle&, Text$, x%, y%, dx%, dy%, TColor&, BColor&
    DECLARE Handle&
    DECLARE SKString#
    DIM SKString#, 255
    STRING SKString#, 0 = Text$
    Handle& = SKCtrl_CreateColorEdit(ParentHandle&,SKString#,Tcolor&,BColor&,x%,y%,dx%,dy%,%hInstance)
    SETSTYLE SK_GETFOCUS(Handle&), 0,  GETSTYLE(SK_GETFOCUS(Handle&)) + $0000
    DISPOSE SKString#
    RETURN Handle&

ENDPROC

CLS
VAR Edit1& = CreateEditCL(%HWND, "", 10,10,200,20,0,RGB(255,0,0) )
SetStyle Edit1&, GetStyle(Edit1&) | ~WS_GROUP
VAR Edit2& = CreateEditCL(%HWND, "", 10,40,200,20,0,RGB(205,0,0) )
VAR Edit3& = CreateEditCL(%HWND, "", 10,80,200,20,0,RGB(155,0,0) )
VAR Edit4& = CreateEditCL(%HWND, "", 10,120,200,20,0,RGB(105,0,0) )
VAR HEnde% = Create("BUTTON", %HWND, "Ende", 10,200,200,25)
VAR Ende%  = 0
VAR i%     = 0
AddHotKey  1000, $09, 0
AddHotKey  1001, $0D, 0

WHILENOT Ende%

    WAITINPUT

    If IsKey($09) Or IsKey($0D)

        SetFocus(~GetNextDlgGroupItem(%hwnd,%Getfocus,0))

    Endif

    IF CLICKED(HEnde%)

        Ende% = 1

    ENDIF

WEND

SKCtrl_DeInitDll()
../../function-references/XProfan/end/'>FIN
 
Gruss
Andreas
________ ________ ________ ________ _
Profan 3.3 - XProfanX2
Win 95,98,ME,2000,XP,Vista - Win 7 32 / 64 Bit
ASUS X93S - Intel Core I7-NVIDIA GForce 540M 8GB Arbeitsspeicher
Homepage :  [...] 
24.05.2011  
 




Stephan
Sonneborn
¡Hola Andreas,

vielen Dank, como wäre Yo nie en él gekommen!

Super!!!
 
Schöne Grüße aus Wittgenstein
von Stephan

Programmierumgebung:| XProfan X4 | WIN10 | AMD FX6100 3,3 GHz
24.05.2011  
 




Stephan
Sonneborn
Andreas Miethe (24.05.11)

Versuch's veces así


¡Hola Andreas,

Yo tener ni Denksportaufgabe para Usted: Como lugar Yo a, jeweils en zwei getrennten Parent-Handles basierte Edits einzufangen y zwar con uno Waitinput-Bucle?
KompilierenMarcaSeparación
 $H Windows.ph
DEF GetWindow(2) !"USER32","GetWindow"
DEF SK_GETFOCUS(1)  GetWindow(&(1),5)
VAR PrgDir$ = GETDIR$("@")
VAR LVDLL&  = USEDLL(PrgDir$ + "\\SKControl.dll")
 $I SKCONTROL.INC
SKCtrl_InitDll()

PROC CreateEditCL

    PARAMETERS ParentHandle&, Text$, x%, y%, dx%, dy%, TColor&, BColor&
    DECLARE Handle&
    DECLARE SKString#
    DIM SKString#, 255
    STRING SKString#, 0 = Text$
    Handle& = SKCtrl_CreateColorEdit(ParentHandle&,SKString#,Tcolor&,BColor&,x%,y%,dx%,dy%,%hInstance)
    SETSTYLE SK_GETFOCUS(Handle&), 0,  GETSTYLE(SK_GETFOCUS(Handle&)) + $0000
    DISPOSE SKString#
    RETURN Handle&

ENDPROC

CLS
VAR GB1% = Create("Groupbox", %HWND, "1", 5,5,220,80)
VAR Edit1& = CreateEditCL(GB1%, "", 10,20,200,20,0,RGB(255,0,0) )
SetStyle Edit1&, GetStyle(Edit1&) | ~WS_GROUP
VAR Edit2& = CreateEditCL(GB1%, "", 10,50,200,20,0,RGB(205,0,0) )
VAR GB2% = Create("Groupbox", %HWND, "2", 5,100,220,80)
VAR Edit3& = CreateEditCL(GB2%, "", 10,20,200,20,0,RGB(155,0,0) )
SetStyle Edit3&, GetStyle(Edit3&) | ~WS_GROUP
VAR Edit4& = CreateEditCL(GB2%, "", 10,50,200,20,0,RGB(105,0,0) )
VAR HEnde% = Create("BUTTON", %HWND, "Ende", 10,200,200,25)
VAR Ende%  = 0
VAR i%     = 0
AddHotKey  1000, $09, 0
AddHotKey  1001, $0D, 0

WHILENOT Ende%

    WAITINPUT

    If IsKey($09) Or IsKey($0D)

        SetFocus(~GetNextDlgGroupItem(GB1%,%Getfocus,0))
        'SetFocus(~GetNextDlgGroupItem(GB2%,%Getfocus,0))

    Endif

    IF CLICKED(HEnde%)

        Ende% = 1

    ENDIF

WEND

SKCtrl_DeInitDll()
='./../../function-references/XProfan/end/'>FIN
 
Schöne Grüße aus Wittgenstein
von Stephan

Programmierumgebung:| XProfan X4 | WIN10 | AMD FX6100 3,3 GHz
24.05.2011  
 




Andreas
Miethe


Eventuell así ?

Usted könntest natürlich auch el Pfeiltasten para Wechseln benutzen
KompilierenMarcaSeparación
 $H Windows.ph
DEF GetWindow(2) !"USER32","GetWindow"
DEF SK_GETFOCUS(1)  GetWindow(&(1),5)
VAR PrgDir$ = GETDIR$("@")
VAR LVDLL&  = USEDLL(PrgDir$ + "\\SKControl.dll")
 $I SKCONTROL.INC
SKCtrl_InitDll()

PROC CreateEditCL

    PARAMETERS ParentHandle&, Text$, x%, y%, dx%, dy%, TColor&, BColor&
    DECLARE Handle&
    DECLARE SKString#
    DIM SKString#, 255
    STRING SKString#, 0 = Text$
    Handle& = SKCtrl_CreateColorEdit(ParentHandle&,SKString#,Tcolor&,BColor&,x%,y%,dx%,dy%,%hInstance)
    SETSTYLE SK_GETFOCUS(Handle&), 0,  GETSTYLE(SK_GETFOCUS(Handle&)) + $0000
    DISPOSE SKString#
    RETURN Handle&

ENDPROC

CLS
VAR GB1% = Create("Groupbox", %HWND, "1", 5,5,220,80)
VAR Edit1& = CreateEditCL(GB1%, "", 10,20,200,20,0,RGB(255,0,0) )
SetStyle Edit1&, GetStyle(Edit1&) | ~WS_GROUP
VAR Edit2& = CreateEditCL(GB1%, "", 10,50,200,20,0,RGB(205,0,0) )
VAR GB2% = Create("Groupbox", %HWND, "2", 5,100,220,80)
VAR Edit3& = CreateEditCL(GB2%, "", 10,20,200,20,0,RGB(155,0,0) )
SetStyle Edit3&, GetStyle(Edit3&) | ~WS_GROUP
VAR Edit4& = CreateEditCL(GB2%, "", 10,50,200,20,0,RGB(105,0,0) )
VAR HEnde% = Create("BUTTON", %HWND, "Ende", 10,200,200,25)
VAR Ende%  = 0
VAR i%     = 0
AddHotKey  1000, $09, 0
AddHotKey  1001, $0D, 0
Var Lastgroup& = 0

WHILENOT Ende%

    WAITINPUT

    If IsKey($0D)

        If LastGroup& = Gb1%

            SetFocus(~GetNextDlgGroupItem(GB1%,%Getfocus,0))

        else

            SetFocus(~GetNextDlgGroupItem(GB2%,%Getfocus,0))

        endif

    Endif

    If IsKey($09)

        If LastGroup& = Gb1%

            SetFocus(Edit3&)
            Lastgroup& = Gb2%

        else

            SetFocus(Edit1&)
            Lastgroup& = Gb1%

        Endif

    Endif

    IF CLICKED(HEnde%)

        Ende% = 1

    ENDIF

WEND

SKCtrl_DeInitDll(
FIN
 
Gruss
Andreas
________ ________ ________ ________ _
Profan 3.3 - XProfanX2
Win 95,98,ME,2000,XP,Vista - Win 7 32 / 64 Bit
ASUS X93S - Intel Core I7-NVIDIA GForce 540M 8GB Arbeitsspeicher
Homepage :  [...] 
25.05.2011  
 




Stephan
Sonneborn
Andreas Miethe (25.05.11)

Eventuell así ?


¡Hola Andreas,

super Concepto! Yo habs todavía una bißchen erweitert y ahora ists auch egal, en welche Listbox uno klickt. Mit Enter kommt uno en el nächste Editar-Feld (innerhalb el Groupbox) y TAB en el nächste Groupbox.
KompilierenMarcaSeparación
 $H Windows.ph
DEF GetWindow(2) !"USER32","GetWindow"
DEF SK_GETFOCUS(1)  GetWindow(&(1),5)
VAR PrgDir$ = GETDIR$("@")
VAR LVDLL&  = USEDLL(PrgDir$ + "\\SKControl.dll")
 $I SKCONTROL.INC
SKCtrl_InitDll()

PROC CreateEditCL

    PARAMETERS ParentHandle&, Text$, x%, y%, dx%, dy%, TColor&, BColor&
    DECLARE Handle&
    DECLARE SKString#
    DIM SKString#, 255
    STRING SKString#, 0 = Text$
    Handle& = SKCtrl_CreateColorEdit(ParentHandle&,SKString#,Tcolor&,BColor&,x%,y%,dx%,dy%,%hInstance)
    SETSTYLE SK_GETFOCUS(Handle&), 0,  GETSTYLE(SK_GETFOCUS(Handle&)) + $0000
    DISPOSE SKString#
    RETURN Handle&

ENDPROC

CLS
VAR GB1% = Create("Groupbox", %HWND, "1", 5,5,220,80)
VAR Edit1& = CreateEditCL(GB1%, "", 10,20,200,20,0,RGB(255,0,0) )
SetStyle Edit1&, GetStyle(Edit1&) | ~WS_GROUP
VAR Edit2& = CreateEditCL(GB1%, "", 10,50,200,20,0,RGB(205,0,0) )
VAR GB2% = Create("Groupbox", %HWND, "2", 5,100,220,80)
VAR Edit3& = CreateEditCL(GB2%, "", 10,20,200,20,0,RGB(155,0,0) )
SetStyle Edit3&, GetStyle(Edit3&) | ~WS_GROUP
VAR Edit4& = CreateEditCL(GB2%, "", 10,50,200,20,0,RGB(105,0,0) )
VAR HEnde% = Create("BUTTON", %HWND, "Ende", 10,200,200,25)
VAR Ende%  = 0
VAR i%     = 0
AddHotKey  1000, $09, 0
AddHotKey  1001, $0D, 0
Var Lastgroup& = 0

WHILENOT Ende%

    WAITINPUT
    Lastgroup& = ~GetParent(~GetParent(%Getfocus))

    If IsKey($0D)

        If LastGroup& = Gb1%

            SetFocus(~GetNextDlgGroupItem(GB1%,%Getfocus,0))

        else

            SetFocus(~GetNextDlgGroupItem(GB2%,%Getfocus,0))

        endif

    Endif

    If IsKey($09)

        If LastGroup& = Gb1%

            SetFocus(Edit3&)
            Lastgroup& = Gb2%

        else

            SetFocus(Edit1&)
            Lastgroup& = Gb1%

        Endif

    Endif

    IF CLICKED(HEnde%)

        Ende% = 1

    ENDIF

WEND

SKCtrl_DeInitDll()
FIN
 
Schöne Grüße aus Wittgenstein
von Stephan

Programmierumgebung:| XProfan X4 | WIN10 | AMD FX6100 3,3 GHz
25.05.2011  
 



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.172 Views

Untitledvor 0 min.
Sven Bader27.01.2023
p.specht13.05.2021
Walter08.10.2019
MrZebulon04.08.2018
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