[VC++] MFC en de tab implemtatie

Pagina: 1
Acties:

  • Infern0
  • Registratie: September 2000
  • Laatst online: 20-08 13:36

Infern0

Hou die ontzettende rust!!

Topicstarter
Ik ben bezig met het door ontwikkelen van een applicatie die gebruik maakt van tabbladen. Nu loop ik echter tegen het probleem aan dat ik een bepaalde functie niet kan vinden in de standaard MFC implementatie.

Wat ik wil is het volgende: op tabblad 1 wordt een knop ingedrukt en dan moet er automatisch geswitched worden naar tabblad 2. Nu heb ik deze functie niet kunnen vinden in de CTabctrl classes van MFC. Wel heb ik andere implementatie's gevonden van tabbladen, die dit wel kunnen zo lijkt het:

CTabView http://msdn.microsoft.com.../0600/Wicked/default.aspx
CTABctrlssl: http://www.codeproject.com/tabctrl/ctabctrlssl.asp

Nu zijn mijn vragen:
- Is het daadwerkelijk niet mogelijk om met de standaard mfc classes zo'n switch uit te voeren? Als dit wel kan, welke functie moet ik dan naar kijken.

- Hebben mensen ervarigen met de een van de twee implementatie's van tabbladen?

- Zou het er veel tijd kosten om mijn applicatie om te schrijven naar een van deze twee? (ik heb nu 4 statische tabbladen)

- Wordt het programma wat ik maak niet minder onderhoud baar, als ik gebruik ga maken van een van deze implementatie's, omdat ik dan toch afwijk van de standaard MFC?

offtopic:
Ik ben gewend om met Qt te programmeren, daarbij vergeleken van ik MFC echt een ramp. Ik vind dat Qt veel gestructureerder te werk gaat en minder omslachtig.

http://www.bsdfreaks.nl Home site: http://rob.lensen.nu /me was RobL


Verwijderd

Is het een echte tabview of een tabcontrol in een formview?

in het tweede geval kan je werken met onderstaande functie.

CTabCtrl::SetCurSel
Selects a tab in a tab control.
int SetCurSel(
int nItem
);

Parameters
nItem The zero-based index of the item to be selected.

Return Value
Zero-based index of the previously selected tab if successful, otherwise – 1.

Remarks
A tab control does not send a TCN_SELCHANGING or TCN_SELCHANGE notification message when a tab is selected using this function. These notifications are sent, using WM_NOTIFY, when the user clicks or uses the keyboard to change tabs.

  • Infern0
  • Registratie: September 2000
  • Laatst online: 20-08 13:36

Infern0

Hou die ontzettende rust!!

Topicstarter
Deze functie werkte niet helemaal naar behoren. Hij veranderde wel van Tab, maar de dialogen werden niet veranderd.
Ik heb nu de functie CTabCtrl::SetCurFocus gebruikt die dit wel netjes doet, waarom weet ik niet.

http://msdn.microsoft.com...er_functions_ctabctrl.asp

http://www.bsdfreaks.nl Home site: http://rob.lensen.nu /me was RobL


Verwijderd

ik heb CTABctrlssl gebruikt en deze werkt goed. Als je de inhoud van bepaalde tab pages wil aanpassen, moet je de oude verbergen en de nieuwe tonen (ShowWindow( SW_HIDE ) en ShowWindow( SW_SHOW ) ). De inhoud is een dialog zonder frame en is een child. Experimenteer met CTABctrlssl en je zult er wel uit moeten kunnen komen.

[ Voor 4% gewijzigd door Verwijderd op 31-03-2003 12:27 . Reden: foute zinsbouw ]