Français
Forum

Merkwürdiges Verhalten beim Einsatz eines Tab Controls

 

Dieter
Zornow
j'ai dans mon Programme Probleme une avec Créer("Bitmap" .... erstellte Grafik je pour Tab anzuzeigen ou bien trop verstecken, Habe ensuite la fois zum Testen un Minimalbeispiel gemacht et cela verhält sich total anders comme dans mon Original. Im Original bekomme je es pas versteckt. ici wird es zunächst pas angezeigt, quoique es cela devrait. mais encore klicken sur qui Reiter erscheint es ensuite doch. Habe ensuite qui Abfrage getestet avec TabChanged() getfocus() et Clicked(). Dabei ist encore une Merkwürdigkeit aufgetaucht. cela Tabcontrol erhält scheinbar niemals den Fokus, car sonst devrait im Hauptfenster mon Abfrage erscheinen. je peux stundenlang klicken, cela Tabcontrol hat keinen Fokus seulement si je sur une Reiter zweimal hintereineinander klicke hat es de là à den Fokus.Clicked() et Tabchanged() réagir mais aussi sans Fokus dans diesem Zusammenhang scheint XProfan je pour l'humeur trop réagir, car qui Ausgangsbasis était, je peux qui Bitmap pas verstecken. ici la fois un Testcode. je hoffe sur qui Schnelle sommes aucun faute drin.
KompilierenMarqueSéparation
Def Show(1) ShowWindow(@&(1), 1)
Def Hide(1) ShowWindow(@&(1), 0)
var ende% = 0
cls
dialog()

Proc SetActiveTab

    Parameters Tab&,Index&
    SendMessage(Tab&,$1330,Index&, 0)

EndProc

PROC DIALOG

    var DLG& = CREATE("DIALOG",%Hwnd,"Neues Fenster",(%maxx/2 - 534/2),(%maxy/2 - 500/2),534,500)
    Var tc& = CREATE("TABCTRL",DLG&,"Tab 1",0003,0003,0520,0412)
    InsertTab(tc&,1,"Tab 2")
    InsertTab(tc&,2,"Tab 3")
    InsertTab(tc&,3,"Tab 4")
    var hpic& = Create("hSizedPic",-1,$WinPath+"\Angler.bmp",100,100,1)
    var bmp& = Create("BITMAP",dlg&,hpic&,10,35)
    var but& = Create("Button",dlg&,"Verstecke",10,250,100,25)
    setActivetab(tc&,0)
    show(bmp&)

    whilenot ende%

        waitinput

        If %key = 2

            ende% = 1

        elseif TabChanged(tc&)

        elseif getfocus(tc&)

        elseif clicked(tc&)

            case getfocus(tc&):Print "Focus"
            case getactivetab(tc&) = 0:show(bmp&)
            case getactivetab(tc&) = 1:hide(bmp&)
            case getactivetab(tc&) = 2:hide(bmp&)
            case getactivetab(tc&) = 3:show(bmp&)

        elseif Clicked(but&)

            Hide(bmp&)

        endif

    endwhile

    deleteobject hpic&
    end

endproc


Salut

Dieter
 
Er ist ein Mann wie ein Baum. Sie nennen ihn Bonsai., Win 7 32 bit und Win 7 64 bit, mit XProfan X2
15.08.2008  
 




Jörg
Sellmeyer
alors, si Du qui Bitmap sur tc& plazierst, erscheint vous aussi juste et qui Buttonabfrage darf naturellement pas derrière GetFocus(tc&) avoir lieu. si on derrière qui Buttonabfrage wieder den Concentrer sur tc& mets, funktioniert es aussi.
KompilierenMarqueSéparation
 $H commctrl.ph
Def Show(1) ShowWindow(@&(1), 1)
Def Hide(1) ShowWindow(@&(1), 0)
var ende% = 0
cls
dialog()

Proc SetActiveTab

    Parameters Tab&,Index&
    SendMessage(Tab&,$1330,Index&, 0)

EndProc

PROC DIALOG

    var DLG& = CREATE("DIALOG",%Hwnd,"Neues Fenster",(%maxx/2 - 534/2),(%maxy/2 - 500/2),534,500)
    Var tc& = CREATE("TABCTRL",DLG&,"Tab 1",0003,0003,0520,0412)
    InsertTab(tc&,1,"Tab 2")
    InsertTab(tc&,2,"Tab 3")
    InsertTab(tc&,3,"Tab 4")
    var hpic& = Create("hSizedPic",-1,$WinPath+"\Angler.bmp",100,100,1)
    var bmp& = Create("BITMAP",tc&,hpic&,10,35)
    var but& = Create("Button",dlg&,"Verstecke",10,250,100,25)
    setActivetab(tc&,0)
    show(bmp&)

    whilenot ende%

        waitinput

        If %key = 2

            ende% = 1

        elseif TabChanged(tc&)

        elseif TabChanged(tc&)

        elseif clicked(tc&)

            case getfocus(tc&):Print "Focus"
            case getactivetab(tc&) = 0:show(bmp&)
            case getactivetab(tc&) = 1:hide(bmp&)
            case getactivetab(tc&) = 2:hide(bmp&)
            case getactivetab(tc&) = 3:show(bmp&)

        elseif Clicked(but&)

            Hide(bmp&)
            SetFocus(tc&)

        endif

    endwhile

    deleteobject hpic&
    end

../funzione-riferimenti/XProfan/endproc/'>endproc


je serait es allerdings plutôt so lösen:
KompilierenMarqueSéparation
 $H commctrl.ph
Def Show(1) ShowWindow(@&(1), 1)
Def Hide(1) ShowWindow(@&(1), 0)
var ende% = 0
cls
dialog()

Proc SetActiveTab

    Paramètres Tab&,Index&
    SendMessage(Tab&,$1330,Index&, 0)

ENDPROC

PROC DIALOG

    var DLG& = CREATE("Dialogue",%Hwnd,"Neues Fenster",(%maxx/2 - 534/2),(%maxy/2 - 500/2),534,500)
    Var tc& = CREATE("TABCTRL",DLG&,"Tab 1",0003,0003,0520,0412)
    InsertTab(tc&,1,"Tab 2")
    InsertTab(tc&,2,"Tab 3")
    InsertTab(tc&,3,"Tab 4")
    var hpic& = Créer("hSizedPic",-1,$WinPath+"\Angler.bmp",100,100,1)
    var bmp& = Créer("BITMAP",tc&,hpic&,10,35)
    var but& = Créer("Button",dlg&,"Verstecke",10,250,100,25)
    setActivetab(tc&,0)
    show(bmp&)

    whilenot ende%

        waitinput
        Cas Clicked(tc&):ShowWindow(bmp&,(GetActivetab(tc&) = 0) Or (GetActivetab(tc&) = 3))

        Si %clé = 2

            ende% = 1

        elseif TabChanged(tc&)

            ici peux on encore autre Sachen faire

        elseif Clicked(but&)

            Hide(bmp&)
            SetFocus(tc&)

        endif

    endwhile

    deleteobject hpic&
    end

endproc

 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
15.08.2008  
 




Dieter
Zornow
@Jörg,

merci, dans mon Originalprogramm frage je aussi avec Tabchanged() ab. cela était seulement un Test avec dem Fokus. Seltsam ist déjà, dass cela Tabcontrol seulement pour einem Double-cliquez sur den Fokus erhält. Zum zweiten sollte cela Bild aussi sur dlg& tout de suite erscheinen, car Controls devrait meiner attitude pour pas sur cela Tabcontrol. si on dans mon Beispiel avec Tabchanged() abfragt erscheint es oui aussi mais seulement pour dem Klick sur qui Tabs. c'est eigentlich alles très seltsam et je peux es Je ne expliquer. je veux arrêt toujours savons, pourquoi es sich so verhält.
suis mais toujours am chercher pourquoi sich cela Bild dans mon Originalprogramm égal wohin je es hinlege pas verstecken peut. je werde wohl alles changement et chaque Tab sur un eigenes Contrôle poser, le moi ensuite gesamt verstecke et anzeige, car j'ai sur chaque Tab, chez 6 Tabs, ca 17 Controls et Profan ist trop lente beim Erstellen qui nichtangezeigten juste trop verstecken, so dass alles flackert beim Aufbau.

Salut

Dieter
 
Er ist ein Mann wie ein Baum. Sie nennen ihn Bonsai., Win 7 32 bit und Win 7 64 bit, mit XProfan X2
16.08.2008  
 



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

834 Views

Untitledvor 0 min.
Jörg Sellmeyer23.06.2020
Torben Nissen04.05.2020
Peter Max Müller16.04.2015
thb25.04.2012

Themeninformationen

cet Thema hat 2 participant:

Dieter Zornow (2x)
Jörg Sellmeyer (1x)


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