Deutsch
DLLs

XFrame-Dll

 

Andreas
Miethe


Hallo zusammen,

ich hatte mal wieder Lust am Aussehen meines Xprofan-Fensters zu schrauben.
Herausgekommen ist dabei eine kleine DLL, die das für mich erledigen kann.
Ich lann damit Rahmen und Titelleiste verändern.
siehe Bild.

Herunterladen



Ich habe die Dll zwar ausgiebig getestet, ab wenn der Eine oder Andere auch ein wenig spielen möchte, dann nur zu.
Vielleicht gibt es ja noch Anregungen dazu.

Das Test-Programm ist für die letzte Freeware-Vollversion Xprofan8 geschrieben.

Bitte unbedingt die PDF-Datei lesen.

35 kB
Hochgeladen:06.01.2010
Ladeanzahl308
Herunterladen
1.035 kB
Hochgeladen:17.07.2012
Ladeanzahl230
Herunterladen
 
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 :  [...] 
06.01.2010  
 




Rolf
Koch
Also bei mir unter Win7 klappt es einwandfrei. Schöne Sache, gerade für Gestaltungsfreaks so wie ich einer bin.
Im Testprogramm sind Wechsel 3 und Wechsel 4 gleich? Dort passiert nix.
 
06.01.2010  
 




Andreas
Miethe


Rolf Koch, Beitrag=55759, Zeitpunkt=06.01.2010
Also bei mir unter Win7 klappt es einwandfrei. Schöne Sache, gerade für Gestaltungsfreaks so wie ich einer bin.
Im Testprogramm sind Wechsel 3 und Wechsel 4 gleich? Dort passiert nix.


Eigentlich sollten bei 4 die beiden Systembuttons verschwinden, die habe ich aber gar nicht angezeigt, habs einfach vergessen beim Umschreiben nach XProfan8.
 
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 :  [...] 
06.01.2010  
 




Christian
Schneider
Sieht wirklich nett aus und das Testprogramm läuft bei mir ohne Probleme.

Zum selber Spielen werde ich leider vor Ende Januar nicht kommen (habs aber definitiv auf ToDo).
 
XProfan 11| Vista(64) SP2
06.01.2010  
 



Etwas umständlich in der Handhabung, aber super Sache.

Irgendwas aber... (Vista)



Also die Popups vom Menü sind zu tief und bei den Buttons fehlt oben anfangs eine Pixelreihe.

7 kB
Hochgeladen:06.01.2010
Ladeanzahl180
Herunterladen
 
06.01.2010  
 




Andreas
Miethe


iF, Beitrag=55767, Zeitpunkt=06.01.2010

Also die Popups vom Menü sind zu tief und bei den Buttons fehlt oben anfangs eine Pixelreihe.


Ja, ist beim Umschreiben nach XProfan8 passiert. Ich hatte schon total vergessen wie man eine Toolbar per Api anlegt.

Hier ein anderes Beispiel. So macht man das Toolbarmenü durchsichtig.
KompilierenMarkierenSeparieren
 $H windows.ph
 $H messages.ph
 $I XFrameDll.Inc
Struct TBBUTTON = iBitmap&,idCommand&,fsState#(1),fsStyle#(1),bReserved#(2),dwData&,iString&
Struct Rect = left&,top&,right&,bottom&
Declare Ende&,Dll&
Declare TB_Buttonstrings$,TB&,TBS&
Declare Rebar&,RebarBandInfo#
Dll& = UseDll("XFrame.dll")
Windowstyle 20
windowtitle "OwnerDraw-Frame"
cls $FFFFD7
Usermessages ~wm_close
UseIcon "Eis"
Ende& = 0
#################
DLL vorbereiten
#################
SetButtonIndent(2)
SetTextIndent(4)
SetProgIcon(0)
SetOnTop(%hwnd,1)
SetButtons(0,0)
AdjustWindow(80,12,18,$FFFF)
SetOnlycaption(0)
SetAddImage(0)
Var T$ = "durchsichtiges Menü mit Rebarcontrol"
SetAddText(Addr(T$),Create("FONT","ARIAL",24,0,1,0,0),$FFFF,~DT_RIGHT)
SetButtonImages(Create("hPic",-1,GetDir$("@")+"\Pics\Allbuttons6.bmp"))
SetBackGroundImage(Create("hPic",-1,GetDir$("@")+"\Pics\BackGround3.bmp"))
SetLogoImage(Create("hPic",-1,GetDir$("@")+"\Pics\xprofande.bmp"),~DT_LEFT)
#################
#################
Dll initialisieren
#################
Init(%hwnd)
UpdateFrame(%hwnd)
#################
Menu aus Toolbar
#################
TB_ButtonStrings$ = "DateizBerarbeitenzHilfezz"
TB& = Create("Toolbar",%hwnd,-1,-1,-1,-1,1)
Var MenuFont& = Create("FONT","Arial",18,0,0,0,0)
SendMessage(TB&,~WM_SETFONT,MenuFont&,1)
SendMessage(tb&,$400+28,0,Addr(TB_ButtonStrings$))
tbs& = SendMessage(tb&,$400+57,0,0)Style holen
tbs& = tbs& | $1000 | $800 | $100 | $10  Style ändern
SendMessage(TB&,($400+56),0,tbs&)Style setzen
SendMessage(TB&,($400+32),0,Makelong(0,0))Icon-Grösse = 0,0
Buttonstil setzen, kein Icon,Stil
Declare TBB#
Dim TBB#,TBBUTTON
TBB#.iBitmap& = -1
Byte TBB#,8 = 4 , $800 | $40 | $10
Button 1 , CommandID , Text-Index
TBB#.idCommand& = -3000
TBB#.iString& = 0
SendMessage(tb&,($400+21),-1,TBB#)
Button 2 , CommandID , Text-Index
TBB#.idCommand& = -3001
TBB#.iString& = 1
SendMessage(tb&,($400+21),-1,TBB#)
Button 3 , CommandID , Text-Index
TBB#.idCommand& = -3002
TBB#.iString& = 2
SendMessage(tb&,($400+21),-1,TBB#)
Dispose TBB#
#################
########################
ReBar-Control anlegen
########################
ReBar& = Control("ReBarWindow32","",$50000040,0,0,0,0,%Hwnd,2000,%hinstance)
Set("Errorlevel",-1)
External("UxTheme.dll","SetWindowTheme",ReBar&,0)
Set("Errorlevel",0)
Dim RebarBandInfo#,80
Long RebarBandInfo#,0=80       UINT        cbSize
Long RebarBandInfo#,4=$000008B3UINT        fMask;
Long RebarBandInfo#,8=$00000100UINT        fStyle;
Long RebarBandInfo#,32=TB&     HWND        hwndChild;
Var rr# = New(Rect)
Sendmessage(TB&,$041D,1,rr#)Buttonhöhe holen
Var h% = rr#.Bottom&Buttonhoehe
Dispose rr#
Long RebarBandInfo#,40=h%      UINT        cyMinChild;
Var BackPic& = Create("hPic",-1,GetDir$("@")+"\Pics\BackGround3.bmp")
Long RebarBandInfo#,48=BackPic&hBitmap     hbmBack
sendmessage(TB&,$0438,0,$5000896D)Toolbarstyle setzen
Sendmessage (ReBar&,$0401,-1,RebarBandInfo#)Toolbar in ReBar
SetWindowPos ReBar& = 0,0- width(%hwnd),0
########################
SetToolbarAutosize(TB&)
Set("MenuBackCol",$FFFFFF)
Set("MenuBorderCol",$FFFFFF)
SubClass %HWnd, 1
Var r1# = New(Rect)

whilenot ende&

    Waitinput

    If %Umessage = ~wm_close

        exit()
        Dispose r1#
        DeleteObject BackPic&
        DeleteObject MenuFont&
        FreeDll Dll&
        Ende& = 1

    Endif

    If MenuItem(3000)

        CreateMenu
        AppendMenu 100,"&Laden",0
        AppendMenu 101,"&Speichern",0
        AppendMenu 102,"Speichern &als",0
        Rechteck des Buttons holen
        SendMessage(tb&,$400+29,0,r1#)
        TrackMenu r1#.left&,Height(TB&)

    Elseif Menuitem(3001)

        CreateMenu
        AppendMenu 100,"&Kopieren",0
        AppendMenu 101,"&Ausschneiden",0
        AppendMenu 102,"&Einfügen",0
        SendMessage(tb&,$400+29,1,r1#)
        TrackMenu r1#.left&,Height(TB&)

    Elseif Menuitem(3002)

        CreateMenu
        AppendMenu 100,"&Hilfe",0
        SendMessage(tb&,$400+29,2,r1#)
        TrackMenu r1#.left&,Height(TB&)
        Case MenuItem(100) : Messagebox("Hilfe gibt es hier nicht","...",0)

    Endif

EndWhile

SubClassProc

    If SubClassMessage(%hWnd, ~wm_size)

        SetWindowPos ReBar& = 0,0- width(%hwnd),0
        Set("WinProc", 0)

    EndIf

EndProc


52 kB
Hochgeladen:06.01.2010
Ladeanzahl230
Herunterladen
 
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 :  [...] 
06.01.2010  
 




Stefan
M.
Caillet
Hallo Andreas,
echt tolles Teil.
Bei mir wird das Fenster, wenn ich es maximiere um einige Bildpunkte zu weit oben angezeigt, sodass das Programmsymbol in der Titelleiste oben abgeschnitten wird: ebenso werden die Grossbuchstaben des Fenstertitels bis zur oberkannte der Kleinbuchstaben abgeschnitten. Auch Liegt es um einige Pixel zuweit links. Habe diesen Effekt im Beispiel "TEST" unter Win7/64bit bei der Original-auflösung 1386 x 768 des TFT erlebt. Es sind keine Textvergrösserungen o.ä. eingestellt
Kannst Du da noch was machen?
Danke.
Gruss Stefan.

83 kB
Hochgeladen:07.01.2010
Ladeanzahl248
Herunterladen
 
Ich habe grosses Glück, weil ich Mitmenschen helfen darf.
Entwicklungsumgebung:
XProfan11 , Win XP Pro 32Bit , Win XP Home ,Win7 HomePremium 64Bit
PC: P4/3GHz , 2GB RAM , 1700GB HD
Laptop: Intel Core 2 Duo /2,2GHz , 4GB RAM , 500GB HD
07.01.2010  
 




Andreas
Miethe


Stefan M. Caillet, Beitrag=55773, Zeitpunkt=07.01.2010
Hallo Andreas,
echt tolles Teil.
Bei mir wird das Fenster, wenn ich es maximiere um einige Bildpunkte zu weit oben angezeigt


Hallo Stefan,

danke für den Hinweis. Ist geändert.
Update hochgeladen.
 
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 :  [...] 
07.01.2010  
 




Stefan
M.
Caillet
Hallo Andreas,
danke. absolut perfekt!
Gruss Stefan
 
Ich habe grosses Glück, weil ich Mitmenschen helfen darf.
Entwicklungsumgebung:
XProfan11 , Win XP Pro 32Bit , Win XP Home ,Win7 HomePremium 64Bit
PC: P4/3GHz , 2GB RAM , 1700GB HD
Laptop: Intel Core 2 Duo /2,2GHz , 4GB RAM , 500GB HD
07.01.2010  
 



Zur DLL


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

10.196 Betrachtungen

Unbenanntvor 0 min.
Axel Berse13.08.2023
Walter30.04.2023
Normann Strübli06.02.2023
Manfred Barei04.02.2023
Mehr...

Themeninformationen



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