Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Döda gamla formulär

Postades av 2003-01-21 22:10:17 - Anders Thornell, i forum vb.net, Tråden har 2 Kommentarer och lästs av 1476 personer

Hej! Jag har ett program i VB.Net där jag har ett formulär som är ett MDI-fönster. Jag öppnar nya fönster inuti det genom olika menyer. När jag exempelvis klickar på meyn Sök, körs kod som ser ut så här:

objfrmSB = New frmSB()
objfrmSB.Show()

objfrmSB är ett publict objekt i MDI-fönstret, alltså ej deklaretat under händelsen för meny som man klickar på.

Jag vill att det bara ska kunna vara ett fönster öppet åt gången inuti MDF-formuläret. Därför måste jag, när jag öppnar ett nytt formulär, döda det gamla. Jag har ett tiotal olika formulär dför vilka denna regel gäller, och jag vet aldrig vilket formulär en användare har uppe och vilket formulär han öppnar istället, så att lägga koden som dödar formuläret under menyn som öppnar formuläret är uteslutet. I VB6 löste jag detta genom Deactivate-händelsen för formuläret; när ett nytt formulär öppnades, kördes eventet i det gamla formuläret och det stängdes.

Problemet är att jag inte lyckas åstadkomma samma sak i Vb.Net. Jag har prövat händelserna för Deactivate och leave, samt en del andra mindre orimliga händelser, men de körs inte när ett nytt formulär öppnas, initieras eller vad dte nu heter på riktigt språk.

Jag har fått tipset att i MDI-formuläret fånga händelsen "MdiChildActivate" och där loopa igenom alla barn och döda dem om de inte är "ActivMdiChild". Händelsen MDIChildActivate anropas när den ska, men jag lyckas inte få koden som ska loopa barnen och döda dem att fungera.

Någon som kan hjälpa mig med att antingen berätta hur koden för att loopa och döda ska se ut eller berätta varför händelserna i respektive formulär inte anropas?

Tacksam för all hjälp.

/Thore


Svara

Sv: Döda gamla formulär

Postades av 2003-01-21 23:55:08 - Per Hultqvist

Kan du inte ha en "global" variabel som hela tiden pekar på det senast öppnade formuläret. Dvs någonting i stil med :

If Not IsNothing(CurrentForm) Then
CurrentForm.Close()
CurrentForm=Nothing
End If

objfrmSB = New frmSB()
CurrentForm=objfrmSB

objfrmSB.Show()

/Per Hultqvist


Svara

Sv: Döda gamla formulär

Postades av 2003-01-22 22:20:20 - Anders Thornell

Ja, det verkar fungera. Tack för hjälpen!

/Anders


Svara

Nyligen

  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo
  • 14:25 Tips på verktyg för att skapa QR-k
  • 14:23 Tips på verktyg för att skapa QR-k
  • 20:52 Fungerer innskuddsbonuser egentlig

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 159
27 952
271 704
1 111
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies