Toon posts:

[VB6] Forms in form (geen MDI) + flat menubars *

Pagina: 1
Acties:
  • 207 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
[vraag 1]
Ik ben bezig om een callcenter applicatie te ontwerpen met een main form met daarin een statusbar en een menubar. Deze moeten door de hele applicatie te gebruiken zijn.

Het programma bestaat uit een aantal schermen, o.a. belscherm, agendascherm, bedrijven etc. Nu wil ik dus niet voor elk form een aparte menubar en statusbar maken, maar bijv. het belscherm als windowless scherm (BorderStyle: none) als child in de mainform zetten zodat het 1 scherm lijkt.

Nu heb ik al gegoogeld en op verschillende forums gezocht, en heb ik gezien dat je zoiets met een MDI form moet doen, het probleem daarmee is dat de mdiParent resizeable is, en dat is niet de bedoeling.

Weet iemand hoe ik dit op kan lossen, of heeft iemand een simpelere manier om hetzelfde te bereiken

[vraag 2]

Dit is misschien een noob vraagje, maar ik heb het echt nergens anders kunnen vinden. Een menubar en statusbar hebben standaard een 'flat' look. Hoe kan ik ze zo instellen dat ze wat verhoogd liggen (zoals bij IE), bij de menu editor is die optie er niet. Ik heb ook al gekeken naar de Coolbar control, maar volgens mij ondersteunt die ook niet helemaal wat ik wil.

Bij voorbaat dank

Verwijderd

Topicstarter
-

[ Voor 97% gewijzigd door Verwijderd op 27-08-2003 11:56 . Reden: topictitel gefixt ]


  • MetZyZteM
  • Registratie: Mei 2002
  • Laatst online: 01-11-2023
mdiParent resizeable = false ?
of iets like mdiParent.resizeable = false

?

[ Voor 40% gewijzigd door MetZyZteM op 27-08-2003 11:38 ]


  • whoami
  • Registratie: December 2000
  • Laatst online: 22:54
Zo.

Waarom mag je MDI - parent Form niet resizeable zijn?

https://fgheysels.github.io/


Verwijderd

Topicstarter
MetZyZteM:

MDI forms hebben niet de optie om Fixed Single te zijn of enige andere manier om de gebruiker niet te laten resizen

Whoami:

De gorms hebben allemaal redelijk veel knoppen, listboxes, data controls.
Als de gebruiker gaat resizen wordt de layout een zootje. Daarom is alleen 800 x 600 mogelijk (design) + maximaliseren

  • Monkeybrains
  • Registratie: Juni 2001
  • Laatst online: 09:06
Je kan het resizen van een form gewoon disablen hoor

  • RayNbow
  • Registratie: Maart 2003
  • Laatst online: 06:22

RayNbow

Kirika <3

Heb je hier iets aan? :)

[rml][ VB6] form in container op ander form[/rml]

(zie ook de code example die ik in dat topic gepost heb)

Ipsa Scientia Potestas Est
NNID: ShinNoNoir


  • whoami
  • Registratie: December 2000
  • Laatst online: 22:54
Verwijderd schreef op 27 August 2003 @ 11:55:
Whoami:

De gorms hebben allemaal redelijk veel knoppen, listboxes, data controls.
Als de gebruiker gaat resizen wordt de layout een zootje. Daarom is alleen 800 x 600 mogelijk (design) + maximaliseren
Je kan er toch voor zorgen dat alles mooi mee resized?

https://fgheysels.github.io/


Verwijderd

Topicstarter
Monkeybrains schreef op 27 August 2003 @ 11:58:
Je kan het resizen van een form gewoon disablen hoor
Welke optie is dat bij MDI forms? volgens mij kan dat niet

  • whoami
  • Registratie: December 2000
  • Laatst online: 22:54
Omdat iets teveel werk vraagt, ga je dus gewoon die functionaliteit disablen?
'k Vraag me af wat je opdrachtgever daar van gaat vinden.

https://fgheysels.github.io/


  • curry684
  • Registratie: Juni 2000
  • Laatst online: 13-08 16:46

curry684

left part of the evil twins

Zo, en nu vernaggelt de topititel de index-layout niet meer :)

Professionele website nodig?


Verwijderd

Hoewel ik het met whoami eens bent dat het niet echt netjes is kan dit misschien helpen als je de resize niet uit kan schakelen. De sub Form_Resize() wordt aangeroepen wanneer een form wordt geresized. Zet hierin gewoon:
Form.width = xxx
Form.height = xxx
De form schiet dan meteen terug naar zijn oorspronkelijke groote als deze wordt geresized.
Nogmaals, ook dit is geen erg nette oplossing...

Verwijderd

Topicstarter
whoami schreef op 27 augustus 2003 @ 13:13:
Omdat iets teveel werk vraagt, ga je dus gewoon die functionaliteit disablen?
'k Vraag me af wat je opdrachtgever daar van gaat vinden.
Resizen boven 800 x 600 is geen probleem. Daaronder wordt moeilijk, omdat er geen ruimte is om alle controls op kwijt te kunnen, dat is voor gebruikers onwerkbaar
Wat is de meerwaarde van resizen. Het wordt een applicatie waar mensen van 9 tot 5 mee gaan werken, en geen andere applicatie naast gebruiken, persoonlijk vind ik het niet lekker werken vanaf een klein venstertje, vanuit een gemaximaliseerd venster werkt veel beter. Resizen heeft voor zo'n applicatie naar mijn mening weinig toegevoegde waarde

  • curry684
  • Registratie: Juni 2000
  • Laatst online: 13-08 16:46

curry684

left part of the evil twins

Het wordt een applicatie waar mensen van 9 tot 5 mee gaan werken, en geen andere applicatie naast gebruiken, persoonlijk vind ik het niet lekker werken vanaf een klein venstertje, vanuit een gemaximaliseerd venster werkt veel beter.
Aannamefout nummer 1 :z

En ik mag hopen dat VB ook een OnCanResize event oid heeft (WM_SIZING handler) waarin je simpelweg resizen onder de 800x600 kunt verbieden: daar is dus een native Win32 mechanisme voor.

Professionele website nodig?


Verwijderd

Topicstarter
curry684 schreef op 27 August 2003 @ 14:08:
[...]

Aannamefout nummer 1 :z
De opdrachtgever is het met mij eens ;)
En ik mag hopen dat VB ook een OnCanResize event oid heeft (WM_SIZING handler) waarin je simpelweg resizen onder de 800x600 kunt verbieden: daar is dus een native Win32 mechanisme voor.
tnx, hier ga ik ff mee prutsen :7

Dan hou ik nog het probleem van de menubar, hoe krijg ik die 3d look als bij IE :?

  • robjanssen
  • Registratie: September 2001
  • Laatst online: 02-08 16:10

robjanssen

Software Developer

Je kunt ipv MDIForms ook gewoon frames gebruiken die je visible in invisible maakt.

  • Limhes
  • Registratie: Oktober 2001
  • Laatst online: 19-08 19:06
robjanssen schreef op 27 augustus 2003 @ 19:53:
Je kunt ipv MDIForms ook gewoon frames gebruiken die je visible in invisible maakt.
Hiermee maak je het wel nodeloos ingewikkeld; er komt redelijk wat code bij kijken, de VB form editor maakt het niet gemakkelijk om achterelkaarliggende frames te editen, je zit met veel code (sowieso al de events die je afvangt) in één scope, terwijl met MDI alles zijn eigen form en dus ook scope heeft.

Ik ben met iets soortgelijks bezig, maximaliseer het scherm met opstarten en laat bij een OnResize event het scherm weer maximaliseren (ongeveer zelfde oplossing als Joost; werkt wel, maar flikkert een beetje). Om het allemaal iets 'gelikter' te maken kun je ook nog met een paar API calls de max en min knoppen rechtsboven uitschakelen.

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Je kunt het met 1 regel code ofzo en een heel gaaf componentje (DataExplorer) van Infragistics doen. Ik zal morgen wat screenshots posten als ik er aan denk ;)

Als je de héle NetAdvantage Suite van infragistics aanschaft krijg je ook mooie menu/tool-bars (Office 2000/XP style), Datagrids en een hele sh*tload aan andere componenten.
Built-In Viewer Panes for any node - Associate each node in the TreeView object with an object in the right pane, including a ListView, web-browser, another ActiveX component, EditView, form or MFC dialog, a read-only Microsoft® Office document, or dual forms with a built-in splitter bar to combine any two of the viewer panes.
Ikzelf heb al mijn "subforms" in losse DLL's gegooid en geef vanuit die DLL een hWnd van het form terug. Infragistics zorgt dan dat het form wordt weergegeven en handelt alle resizing etc af.

Enig nadeel is de prijs ($495 voor de hele suite, $395 voor een los component...die keuze kan niet al te moeilijk zijn ;) ), maar je kunt een trial downloaden en het is zijn geld méér dan waard. Het neemt je zoveel werk uit handen......Heerlijk :) Overigens is de download ook redelijk groot, ik meen een MB-tje of 160 ofzo. Daar zit dan alles in en natuurlijk hoef je dan dus niet alles weer te re-distributen.

Verder kan in een MDI applicatie een mdi-child bij mijn weten wel degelijk "Fixed single" zijn, alleen zullen alle gemaximaliseerde schermen weer 'normaal' worden.

P.s.: Ik zie net dat de data-explorer ook los is te downloaden (6.2 MB)

[ Voor 15% gewijzigd door RobIII op 27-08-2003 23:56 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij

Pagina: 1