Gå til innhold

MDI: Child-vinduer med bsToolWindow-style?


Anbefalte innlegg

Jeg sitter og lager et program som skal ha multiple-document

muligheter, MEN jeg vil at alle dokumentene som åpnes skal

ha borderstyle lik bsToolWindow eller bsSizeToolWin, altså

tynn ramme med kun et lite exit-kryss.

 

Men når jeg velger form-style til å være fsMDIChild så virker

det som det er umulig å få til sånn tynn ramme/titlebar.

 

Jeg har prøvd ut alle borderstyle'ene, og de virker, med unntak

av at titlebar'en alltid blir tykk.

 

bsToolWindow gjør at boksen får kun exit-krysset synlig, og

den er ikke resizeable, mens bsSizeToolWin gjør at jeg kan

resize også. Men alltid med den tykke titlebar'en.

 

 

Noen som har en løsning for meg?

 

.a

Lenke til kommentar
Videoannonse
Annonse

Hmm, jeg så på det men hvis jeg oppretter vinduene uten å bruke mdi så fikk ikke jeg dem til å "være i" vinduet til parent-applikasjonen, f.eks. hvis jeg maksimerte parent'en...

 

 

Det blir nok til at vi bare bruker MDI for vi trenger mdi-egenskapene, og så får heller designen bare lide litt.

 

 

Men vet du hva bsSizeToolWin heter hvis man skal bruke WinSDK? Jeg regner med at grunnen til at vi ikke får tynn titlebar ved bruk av mdi er at system-menyen som inkluderer "neste vindu" osv. må være med på en mdi-child. Kanskje man kan lure disse child-vinduene med et par WinSDK-gloser?

Lenke til kommentar

Hadde dårlig hell med CreateParams jeg óg, men dette ser ut til å funke fint:

SetWindowLong(Form2.Handle, GWL_EXSTYLE, GWL_EXSTYLE and WS_EX_PALETTEWINDOW);

dette kan du da sette inn rett etter at du har created form'en (enten i OnCreate, eller i project-source'en), og deretter kjøre en RePaint..

Lenke til kommentar

OK, jeg har et spørsmål til her i samme forbindelse:

 

applikasjonen min er altså en MDI form med mange MDI children, men jeg har også en floating toolbar som jeg har laget i en form og som er definert som Allways on top vha meldingen HWND_TOPMOST

 

Dette funker fint, men jeg vil gjerne at denne flytende toolbar'en skal ha fokus hele tiden. Hvis du ser på den flytende toolbaren til venstre i Adobe Photoshop så er den 'active' hele tiden, altså titlebar'en på form'en er hele tiden blått (og ikke grått)

 

Er det noen måte jeg kan definere at min flytende toolbar skal være active, selv om brukeren jobber i et av MDI-child vinduene?

Lenke til kommentar
  • 3 uker senere...
OK, jeg har et spørsmål til her i samme forbindelse:

 

applikasjonen min er altså en MDI form med mange MDI children, men jeg har også en floating toolbar som jeg har laget i en form og som er definert som Allways on top vha meldingen HWND_TOPMOST

 

Dette funker fint, men jeg vil gjerne at denne flytende toolbar'en skal ha fokus hele tiden. Hvis du ser på den flytende toolbaren til venstre i Adobe Photoshop så er den 'active' hele tiden, altså titlebar'en på form'en er hele tiden blått (og ikke grått)

 

Er det noen måte jeg kan definere at min flytende toolbar skal være active, selv om brukeren jobber i et av MDI-child vinduene?

Jeg tror toolbaren i photoshop er tegnet av photoshop programmet,

slik at selv om ikke vinduet har fokus så ser det slik ut.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...