Deutsch
C ++ Forum

TabChanged bei WaitInput wird nicht erkannt

 

Georg
Hovenbitzer
Hallo zusammen,

mein Problem ist das Erkennen des TabChanged bei einer Schleife mit WaitInput.
Nachfolgender Code funktioniert mit WaitInput unter XProfan ohne Probleme, wenn ich diesen mit Profan2Cpp 1.5 übersetze wird der TabChange nicht erkannt. Verwende ich GetMessage in funktioniert die übersezte Version. Nur dann bekomme ich in der reinen Profan Version probleme.

Hat jemand eine Idee was ich falsch mache oder liegt es an Profan2Cpp ?!

Gruß
Georg
KompilierenMarkierenSeparieren
Def GetSysColor(1) !"USER32.DLL","GetSysColor"
Def GetAsyncKeyState(1) !"User32","GetAsyncKeyState"
Declare Ende&
WindowStyle 512 + 16 + 8 + 2
WindowTitle "HSP Tagger"
Window 0,0-800,600
UserMessages 33,273,16	~WM_MOUSEACTIVATE,~WM_COMMAND,~WM_CLOSE
Cls GetSysColor(15)	(~COLOR_BTNFACE)
@Set("TrueColor",1)
@Set("Decimals",0)
UseFont "Arinal Narrow",14,0,1,0,0
SetDialogFont 1

Proc Lyric_Window

    Declare LyDialog&
    Declare LyTab&
    Declare LyEditID3&
    Declare LyEditLyr&
    Declare LyLaden&
    Declare LyLoeschen&
    Declare LyCopy&
    WindowStyle 512 + 8
    LyDialog& = @Create("Window",%hWnd,"Lyric",%WinLeft+100,%WinTop+75, 530, 387)
    LyEditID3& = @Control("EDIT", "", $54311004, 14, 36, 493, 260, LyDialog&, 2001, %hInstance, $00020200)
    LyEditLyr& = @Control("EDIT", "", $54310804, 14, 36, 493, 260, LyDialog&, 2002, %hInstance, $00020200)
    @ShowWindow(LyEditLyr&,0)
    LyLaden& = @Control("BUTTON", "Laden", $54010000, 100, 308, 64, 29, LyDialog&, 2003, %hInstance, $00020000)
    LyLoeschen& = @Control("BUTTON", "Löschen", $54010000, 228, 308, 64, 29, LyDialog&, 2004, %hInstance, $00020000)
    LyCopy& = @Control("BUTTON", "Lyr -> ID3", $54010000, 356, 308, 64, 29, LyDialog&, 2005, %hInstance, $00020000)
    LyTab& = @Control("SYSTABCONTROL32", "", $54010000, 0, 0, 526, 357, LyDialog&, 2006, %hInstance,$10000) WS_EX_CONTROLPARENT
    @InsertTab(LyTab&, 1, "ID3v2.x")
    @InsertTab(LyTab&, 2, "Lyric 1.x/2.x")

    WhileNot (GetAsyncKeyState($1B) <> 0) Or (%UMessage = 16)	~WM_CLOSE

        WaitInput Tabchanged wird nicht erkannt
        GetMessage Tabchanged wird erkannt

        If @TabChanged(LyTab&) = 1

            If @GetActiveTab(LyTab&) = 0

                EnableWindow LyLaden&,1
                @ShowWindow(LyEditLyr&,0)
                EnableWindow LyEditID3&,1
                @ShowWindow(LyEditID3&,1)
                @SetFocus(LyTab&)

            Else

                EnableWindow LyLaden&,0
                EnableWindow LyEditID3&,0
                @ShowWindow(LyEditID3&,0)
                @ShowWindow(LyEditLyr&,1)
                @SetFocus(LyTab&)

            EndIf

        EndIf

    EndWhile

    @DestroyWindow(LyDialog&)
    @SetFocus(%hWnd)

EndProc

Lyric_Window

WhileNot Ende& = 1

    WaitInput

    If (%UMessage = 16) And (@GetActiveWindow() = %hWnd)	~WM_CLOSE

        Ende& = 1

    EndIf

EndWhile

End
 
Viele Grüsse, Georg Hovenbitzer(Windows XP Pro, XProfan 11.2, Profan2Cpp 1.6a)
09.11.2005  
 




Sebastian
König
Hallo Georg,

ich denke, es ist ein kleines Problem im Message-Handling von Profan2Cpp (d.h in der plibwin.lib). Der Fehler tritt auch bei mir auf...

Ich denke, ich konnte die Ursache schon ermitteln: Wie es aussieht, setzt XProfan den internen Status für TabChanged immer erst beim Auslesen zurück - ein TabChanged-Aufruf innerhalb eines anderen ergibt jedenfalls 0. In Profan2Cpp wird der Status aber bei jedem WAITINPUT zurückgesetzt... ich werde das gleich mal ändern.

Ich kann Dir gern eine neue Lib zum Testen per eMail schicken - welchen Compiler benutzt Du denn?

MfG

Sebastian
 
Windows XP, XProfan/Profan² 4.5 bis 11
Profan2Cpp-Homepage:  [...] 
Alte Profan²-Seite:  [...] 
09.11.2005  
 




Georg
Hovenbitzer
Hallo Sebastian,

wäre klasse wenn du mir die neue Lib schicken könntest.
Als Compiler benutze ich den Dev-C++ 4, davon die aktuelle Version.
Ich habe gerade gesehen, dass unter den Compiler Einstellungen die 5er Version zum auswählen gibt, wird die nun schon unterstüzt oder ist dies nur schon mal vorsorglich.
 
Viele Grüsse, Georg Hovenbitzer(Windows XP Pro, XProfan 11.2, Profan2Cpp 1.6a)
09.11.2005  
 




Sebastian
König
Hallo Georg,

ich schicke die Lib gleich mal raus .

Zu Dev-C++ 5: Das ist etwas kompliziert... Die Version befindet sich schon seit einer Ewigkeit im Beta-Status. Profan2Cpp unterstützt sie schon seit Anfang an, jedoch wurde im Laufe der Weiterentwicklung von Dev-C++ irgendwann mal der Compiler gewechselt. Die letzte Beta, die unterstützt wurde, war glaube ich 4.9.8.0. Ich habe dafür auch einen Hinweis auf die Profan2Cpp-Homepage (bei den unterstützten Compilern) gesetzt und rate im Moment einfach zu Version 4.

Das Profan2Cpp-Paket möchte ich erst anpassen, wenn Dev-C++ 5 mal nicht mehr im Beta-Stadium ist (sonst wechseln die den Compiler womöglich nochmal ).

MfG

Sebastian
 
Windows XP, XProfan/Profan² 4.5 bis 11
Profan2Cpp-Homepage:  [...] 
Alte Profan²-Seite:  [...] 
09.11.2005  
 




Georg
Hovenbitzer
Hallo Sebastian,

was soll ich sagen
Gerade ein Problem gemeldet und nicht mal 10 Stunden später behoben.
So was ist absolut spitze.

Ein ganz großes Lob an dich
 
Viele Grüsse, Georg Hovenbitzer(Windows XP Pro, XProfan 11.2, Profan2Cpp 1.6a)
09.11.2005  
 



Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

1.746 Betrachtungen

Unbenanntvor 0 min.
Normann Strübli04.02.2023
Andreas Koch04.04.2012
Unbenannt25.03.2012
Michael Borowiak04.08.2011
Mehr...

Themeninformationen

Dieses Thema hat 2 Teilnehmer:

Georg Hovenbitzer (3x)
Sebastian König (2x)


Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie