FastFiber

Sluiten van een frmPalette (PaletteSet)

Gestart door Bassiemeer, do 17 03 2011, 11:22:52

Vorige topic - Volgende topic

Bassiemeer

Hallo heren,

Ik heb een palette gemaakt bestaande uit 2 tabs, op elke tab wil ik een knop hebben om de hele app te sluiten.
Achter de knop heb ik de volgende 2 codes geprobeerd.

Me.Close() - Hierbij krijg ik de error 'Close' is not a member of "....."

Me.Dispose() - Hierbij wordt de inhoud van de palette verwijderd, en niet de app gesloten.

Hoe krijg ik deze op een goede manier gesloten?
Bij voorbaat dank.

sschevers

Bassiemeer,

Een pallet hoef je niet sluiten vanuit code. Je kunt de meegeven bij het aanmaken van je pallet
If ps Is Nothing Then
'Create new palette set
' use the constructor with Guid
ps = New PaletteSet("KLIC", New Guid("2C954B3B-ED2A-4bd0-BBE2-C87426BD6C32"))
ps.Style = PaletteSetStyles.NameEditable Or PaletteSetStyles.ShowPropertiesMenu Or PaletteSetStyles.ShowAutoHideButton Or    PaletteSetStyles.ShowCloseButton
ps.MinimumSize = New Size(400, 650)
ps.Add("Klic melding", New FrmKlic())
End If


Kijk ook eens naar bjigaande link
http://docs.autodesk.com/ACD/2010/ENU/AutoCAD%20.NET%20Developer's%20Guide/index.html


stephan


Bassiemeer

#2
De code die jij daar linkt is als ik het goed heb het standaard kruisje wat bij elke palette op de zelfde plaats zit.
Ik zoek een stuk code die ik achter een knopje op de tabs zelf kan zetten, dus dat ik op elke tab een knop heb waarmee ik de app kan sluiten.

EDIT: Is er trouwens ook een mogelijkheid om de palette bij het starten van de app door middel van het commando dat de palette automatisch links of rechts wordt gedockt en geautohide ??

sschevers

Een palletset is een al applicatie. Waarom wil je de applicatie sluiten?
Als je een applicatie wilt sluiten kun je beter gebruik maken van een formulier deze kan je sluiten.

Wanneer je een pallet sluit dan moet je bij het opnieuw opstarten van je applicatie er weer voor zorgen dat de pallet weer in de palletset komt.
De manier waarop je nu een pallet wil gebruiken is niet gebruikelijk binnen Autocad. Dit gaat verwarring wekken bij je gebruikers.

stephan

Bassiemeer

Ik wil ook geen palette sluiten maar de hele set, dus de hele app.. maar het maakt niet zoveel uit.. ik laat het wel zoals het is.

sschevers

PaletteSetStyles.ShowCloseButton

met deze instelling sluit je de hele paletteset

stephan

Bassiemeer

Citaat van: sschevers op vr 18 03 2011, 14:05:44
PaletteSetStyles.ShowCloseButton

met deze instelling sluit je de hele paletteset

stephan


Klopt, maar dat is het standaard kruisje. Deze kan je niet achter een CommandButton hangen.

sschevers

Als je een standaard kruisje hebt, dan heb je toch geen eigen button nodig toch? Of zie ik het verkeerd?

Bassiemeer

Citaat van: sschevers op vr 18 03 2011, 14:26:02
Als je een standaard kruisje hebt, dan heb je toch geen eigen button nodig toch? Of zie ik het verkeerd?

Ik laat het nu wel zo, maar dat was in eerste instantie niet de bedoeling. Aangezien als de palette gedocked is dat het kruisje en het mininmaliseren wordt gehide.

sschevers

#9
Bassiemeer,

Als je code gebruikt die ik je eerder heb gestuurt heb je ook een kruisje en een minimaliseer optie als je de pallet hebt gedockt. Zie de bijgevoegde screenshots

groeten stephan

ps: Ik werk helaas nog in acad 2007. Ik heb net even getest in civil 3d 2009 en daar heb je de opties ook tot je beschikking

Bassiemeer

#10
Bij 2011 is het kruisje en de minimaliseer optie alleen te zien als je met je muis over de titelbalk van de palette heen gaat als deze gedocked is.