[win32] focus probleem

Pagina: 1
Acties:

  • ZaZ
  • Registratie: Oktober 2002
  • Laatst online: 00:48

ZaZ

Tweakers abonnee

Topicstarter
beetje vage topic titel, maar ik wist anders ook niet hoe ik het moest omschrijven.

ik wil in de explorer van windows tabs maken. dit lukt tot op zekere hoogte.
mijn idee was een lege parent window te maken en die een soort van tabs te geven. dan telkens als er een nieuwe window aangemaakt wordt, en het is een explorer window, dan hak ik de titelbalk eraf en maak m een child van mijn window en maximaliseer ik 'm daarbinnen.
verder doe ik wat dingetjes dat je geen verschil ziet tussen de normale explorer window en mijn container.
het werkt allemaal op zich best ok alleen stuit ik op een vervelend probleem.
het blijven 2 aparte windows. als het 'geknipte' gedeelte actief is dan is de titelbalk 'greyed/non-actief' , en als de parent gefocused is dan zijn de menu's van de explorer grijs omdat het niet het actieve window is.

is nou mijn hele aanpak van iets wat ik ff snel dacht te maken niet goed, of kan ik het toch nog zo maken dat het een echt onderdeel wordt van mijn parent window.
of als het beide focus kan houden is het ook goed, maar dat lijkt mij onmogelijk.
ik zie nu eigenlijk ook wel in dat ik een foutje heb gemaakt met de opzet, alleen weet ik nu zo ff 1 2 3 niet hoe ik het beter aan kan pakken. dus een duwtje in de goede richting en misschien een API die ik moet gebruiken zou ik op prijs stellen :)

Lekker op de bank


  • curry684
  • Registratie: Juni 2000
  • Laatst online: 12-05 22:23

curry684

left part of the evil twins

Dit is correct gedrag wat je waarneemt als je een toplevel window onderdeel maakt van een ander window, omdat het ding nu eenmaal de window styles WS_DLGFRAME, WS_CAPTION e.d. heeft.

Je zou kunnen proberen om de window flags van het to-be-child window zo te verkrachten dat het er wel goed uitziet middels SetWindowLong, zou je dus alle flags moeten nuken behalve WS_CHILD.

Professionele website nodig?


  • ZaZ
  • Registratie: Oktober 2002
  • Laatst online: 00:48

ZaZ

Tweakers abonnee

Topicstarter
thanks... klinkt logisch :*)
het maakt niet uit of het een smerige oplossing is. het moet enkel op mijn computer draaien omdat ik gewoon niet tegen een volle taskbar kan :)

Lekker op de bank


  • curry684
  • Registratie: Juni 2000
  • Laatst online: 12-05 22:23

curry684

left part of the evil twins

Het is je verder overigens bekend dat Windows XP 'similar taskbarbuttons' groupt, en dat je met de TweakUI PowerToy kunt instellen dat ie dat vanaf 2 identieke apps al moet doen ipv de standaard 4? :)

Professionele website nodig?


  • ZaZ
  • Registratie: Oktober 2002
  • Laatst online: 00:48

ZaZ

Tweakers abonnee

Topicstarter
curry684 schreef op dinsdag 30 november 2004 @ 14:22:
Het is je verder overigens bekend dat Windows XP 'similar taskbarbuttons' groupt, en dat je met de TweakUI PowerToy kunt instellen dat ie dat vanaf 2 identieke apps al moet doen ipv de standaard 4? :)
jep i know ;)
ik vind alleen die grouping functie van XP zelf alles behalve lekker werken.
daar komt nog bij dat ik ook een hekel heb aan XP en het dus niet gebruik.
ik wil gewoon een hele smalle balk onder de statusbar die alle vensters verdeelt in tabs zonder dat je voor de rest verschil mag zien.
dat heb ik dus bijna voor elkaar alleen op dat ene irri probleempje na :)

Lekker op de bank


Verwijderd

http://www.crazybrowser.com/

Deze browser kan dat al (600 kb). Het is een explorer mod.

  • ZaZ
  • Registratie: Oktober 2002
  • Laatst online: 00:48

ZaZ

Tweakers abonnee

Topicstarter
Verwijderd schreef op dinsdag 30 november 2004 @ 15:28:
http://www.crazybrowser.com/

Deze browser kan dat al (600 kb). Het is een explorer mod.
bedankt, maar dat bedoelde ik niet :)
dit is namelijk een internet browser die als je het als gewone explorer gebruikt behoorlijk wat gebreken heeft ten opzichte van de standaard explorer.
en bovendien is het een los programma dat een shell is.
mijn opzet is gewoon een service die draait die alle explorer windows 'steelt' en alleen dat toevoegt wat ik erbij wil hebben.
ik heb gekeken of er al iets bestond maar had niets kunnen vinden, en bovendien is het leuk om zelf dit soort dingetjes in elkaar te jensen.

Lekker op de bank


  • ZaZ
  • Registratie: Oktober 2002
  • Laatst online: 00:48

ZaZ

Tweakers abonnee

Topicstarter
ok... ik lijk er niet uit te komen ;(
ik heb het net ff flink getest maar ik stuit op iets wat in mijn ogen vreemd is.
alle window style flags heb ik goedgezet, en het focus probleem is opgelost behalve dat het menu disabled blijft.
dus ik heb zelf wat andere lege apps gemaakt om te kijken wanneer het wel en niet werkt.
als het window een borderstyle heeft dan zijn dingen zoals standaard textboxes en menu's niet toegankelijk
als ie geen borderstyle heeft, dan wel.
maar als ik met SetWindowLong achteraf WS_CAPTION etc eraf sloop en de extended styles ook goedzet dan werkt het nog steeds niet :?
dit probleem doet zich overigens alleen voor als je het de WS_CHILDWINDOW flag geeft. maar dat is sowieso nodig om het focus probleem op te lossen
dus bij het ene werkende voorbeeld en het andere voorbeeld wat weigert zijn de window style, en extended window style flags precies hetzelfde.
er moet dus nog iets anders zijn.

Lekker op de bank

Pagina: 1