Results 1 to 14 of 14

Thread: Mdi

  1. #1
    Senior Member EricLang's Avatar
    Join Date
    May 2002
    Location
    Holland
    Posts
    3,196

    Mdi

    Binnenkort ga ik een oude MDI applicatie "niet-MDI" maken.
    Dat is niet zo moeilijk, behalve dat ik de automatische menu-merge moet herschrijven.
    Maar de vraag is eigenlijk: wat is een goede alternatieve layout?
    De applicatie heeft vele forms die tegelijk open kunnen staan. Al die floating windows bovenop het mainform maken e.e.a. niet heel overzichtelijk.
    Een idee zou kunnen zijn al deze forms in tabs onder te brengen, maar dan kun je weer niet twee forms naast elkaar zetten.
    Any ideas?

  2. #2
    I7 7700K 32Gb Win10 Pro Wok's Avatar
    Join Date
    Dec 2002
    Location
    Alkmaar
    Posts
    1,906
    Als je vele forms heb wat is er dan mis met MDI?
    Ik gebruik het ook nog steeds.

    Applicatie's met minder forms, dan heb ik de forms op panels staan, en toon ze al nodig zijn, resizen gaat ook goed, al moet je bij alle componenten de anchors wel goed zetten.
    Staan er 2 panels op het scherm, komt er ook een splitter tussen.

    Gr. Peter
    10.3.1, Delphi2010, of Lazarus 2.0.2

  3. #3
    Senior Member EricLang's Avatar
    Join Date
    May 2002
    Location
    Holland
    Posts
    3,196
    MDI is antiek. Niet meer ondersteund. En "niet maximized" zien de forms er niet uit.

  4. #4
    Quote Originally Posted by EricLang View Post
    De applicatie heeft vele forms die tegelijk open kunnen staan. Al die floating windows bovenop het mainform maken e.e.a. niet heel overzichtelijk.
    Je zou ervoor kunnen zorgen dat de mainform altijd ontop is (links, recht, onder of boven). Of dat de andere subforms hier niet overheen kunnen.

    Verder zou je op je mainform een lijst bij kunnen houden van de geopende subforms (net zoets als de taakbalk).

  5. #5
    I7 7700K 32Gb Win10 Pro Wok's Avatar
    Join Date
    Dec 2002
    Location
    Alkmaar
    Posts
    1,906
    Quote Originally Posted by EricLang View Post
    MDI is antiek. Niet meer ondersteund. En "niet maximized" zien de forms er niet uit.
    Meningen verschillen
    Ok het is niet meer helemaal van deze tijd, maar het wordt nog ondersteund, en hoge resolutie's geven ook problemen maar,
    er is (nog) geen passend alternatief. En er zijn ook handigheidjes als 2 formen naast of onder elkaar zetten wat er standaard in zit.
    Met wat creativiteit kan het best nog wel even mee, niet elk bestaan project kan je gelijk ombouwen, dan heb je je aan 24 uur per dag te kort.
    Per project kijk ik wat anders moet, anders kan en niet te vergeten wat de klant wil, er zijn klanten die zweren bij de oude Delphi7 look en feel.

    En om terug te komen op je vele forms die je heb openstaan,... misschien moet je daar anders mee omgaan, is het nodig om ze allemaal open te hebben?
    Rust op je scherm brengt ook rust bij de gebruiker.

    Andere ogen hebben een andere mening over de applicatie,
    Soms heel verhelderend, soms onzinnig.

    Peter
    10.3.1, Delphi2010, of Lazarus 2.0.2

  6. #6
    John Kuiper
    Join Date
    Apr 2007
    Location
    Almere
    Posts
    8,498
    Een idee zou kunnen zijn al deze forms in tabs onder te brengen, maar dan kun je weer niet twee forms naast elkaar zetten.
    Vaak is dat het alternatief. Nu ken ik jouw applicatie niet, maar moet je kijken op meerdere formulieren tegelijk? Je kan natuurlijk ook met frames gaan werken. Dan kan je meerdere forms tegelijk tonen. Het gedrag van een frames is bijna gelijk aan die van een MDIchild.
    Delphi is great. Lazarus is more powerfull

  7. #7
    Misschien kan je schermen docken, zoals in de Delphi IDE en meer van zulke tools.
    1+1=b

  8. #8
    Stijn Sanders develyoy's Avatar
    Join Date
    Jun 2008
    Location
    GentBrugge, Belgi?½
    Posts
    960
    Ik weet natuurlijk helemaal niet waar de applicatie om gaat, en of je hoegenaamd de mogelijkheden hebt om heel diep er op in te grijpen, maar als je 'modern' zoekt en eens gek wil doen, waarom niet de UI in HTML doen? Dat kan op allerhande manieren. Je kan met TWebBrowser componenten werken, of de Chromium-gebaseerde alternatieven, maar de data er in krijgen is wel eens wat puzzelen. Dan zijn er een sloot pogingen om 'web' vanuit de IDE te doen, met IntraWeb op kop, maar daar heb ik altijd een slecht gevoel bij gehad, en het idee dat er nog eens een hoop puzzelen bij komt, en je na een tijd toch onnodig hard tegen allerlei beperkingen en tekortkomingen stoot.

    Dus als je de applicatie van op een (web)server kan hosten (en zelfs daar kan je best nog een mouw aan aanpassen) zou ik toch durven voorstellen dat je eens kijkt wat je met xxm zou kunnen doen. De bedoeling was om met de kracht en snelheid van de Delphi compiler te kunnen doen wat ik met PHP had: wat programmeren, en dan F5 in de browser zien of het doet wat het moet doen. Maar gaandeweg is er een stevig stabiel platform uit gegroeid waarmee je een volledig project in een kant-en-klare DLL kan zetten, met alles wat Delphi nog te bieden heeft, die je vlot kan inzetten onder IIS, of Apache of nog andere, en zo kan upgraden zonder dat de service down moet.

    Maar, jammer genoeg komt er best wel nog wat kijken om iets van bepaalde grootte naar xxm om te zetten. De vergelijking met PHP gaat ook hier op: PHP zelf is een goeie basis, maar je kan er kiezen uit een lange lijst met platformen met elk hun voors en tegens (Drupal,Wordpress...) En voor xxm heb je er eigenlijk nog geen. Het beste voorbeeld wat ik kan geven is deze applicatie die al uitgebreide structuren in een database onderhoudt. Wat niet is kan nog komen natuurlijk. Voorlopig blijf ik dus op zoek naar mensen die Delphi willen combineren met het Web, ook geen hulp hebben aan een RAD-IDE-web-oplossing, maar wel met xxm een oplossing hebben om de vreemde eigenheden van ISAPI of Apache abstract te kunnen benaderen en uit het project te houden.

  9. #9
    Senior Member EricLang's Avatar
    Join Date
    May 2002
    Location
    Holland
    Posts
    3,196
    Het wordt een tabbed interface. Daar veel mensen tegenwoordig 2 monitoren hebben, bouw ik ook een mechanisme in om de tabs als los form uit de pagecontrol te trekken.

  10. #10
    mov rax,marcov; push rax marcov's Avatar
    Join Date
    Apr 2004
    Location
    Ehv, Nl
    Posts
    9,907
    MDI is weer in de mode ! Apple IOS 13 heeft een organizatie vorm die erg op MDI lijkt :-)

    https://www.theregister.co.uk/2019/0..._for_grownups/

    Volgens het artikel dan. De praktische uitwerking klinkt meer als docken van document windows.

  11. #11
    Senior Member EricLang's Avatar
    Join Date
    May 2002
    Location
    Holland
    Posts
    3,196
    Geinig.
    Op Windows zal het niet meer in de mode komen, voorzover ik kan achterhalen. Sommige MS applicaties zijn nog MDI zoals de SQL Server Profiler :-)

  12. #12
    mov rax,marcov; push rax marcov's Avatar
    Join Date
    Apr 2004
    Location
    Ehv, Nl
    Posts
    9,907
    De uitgaande Microchip IDE ook. (die gebruik ik nog veel in het veld, de Netbeans gebaseerde opvolger die ik doorgaans wel gebruik, start erg langzaam op als ie van de stroom is)

    En nee, ik verwacht niet dat het terugkomt. Heel rouwig ben ik er eerlijk gezegd ook niet om. Teveel drag en drop om dingen passend te maken, en bij elk nieuw scherm opnieuw. Al kan je met wat eigen code die dingen rangschikt (en b.v. bepaalde zones voor hoofd en bij vensters reserveert) veel bereiken.

    Helaas is echter geen default alternatief. MDI is relatief makkelijk te implementeren (vroeger zelfs een demo bij Delphi), en de "betere" oplossingen zijn gewoon buiten bereik voor een projectje.

    Lazarus' docking is deels ingebouwd in de LCL, dus op termijn hoop ik daar op, maar dat vordert maar langzaam en ziet er wat lelijk uit.

    Wat de oude MDI betreft, ik zou die graag in Lazarus zien. Alleen maar om Bloodshed IDE te kunnen hercompileren :-)

  13. #13
    Senior Member EricLang's Avatar
    Join Date
    May 2002
    Location
    Holland
    Posts
    3,196
    Geen default alternatief inderdaad, maar childforms (zonder border vooral, anders ziet het er niet uit) in een TabSheet zetten is niet zo moeilijk.
    Met meerdere monitoren is MDI eigenlijk ongeschikt. Ik zie veel medewerkers bij mijn klant met 2 monitoren.

  14. #14
    mov rax,marcov; push rax marcov's Avatar
    Join Date
    Apr 2004
    Location
    Ehv, Nl
    Posts
    9,907
    Mijn werk apps zijn vaker wel dan niet ook voor touchscreens, en ik heb een hoofdknoppenbar aan de onderkant, en eventueel aan de rechterkant een nadere onderverdeling naar schermen.

    De tabbing is makkelijk, wat erna komt (andere child windows, zoals de debug, watch en message fields) ook configureerbaar maken.

    Zelf heb ik een twee monitors en mijn hoofdontwikkel monitor is portrait, en daar wijken alle child windows naar de zijkant weg. Ook dat moet je weer zelf beunen enz.

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •