• Hallo liebe Userinnen und User,

    nach bereits längeren Planungen und Vorbereitungen sind wir nun von vBulletin auf Xenforo umgestiegen. Die Umstellung musste leider aufgrund der Serverprobleme der letzten Tage notgedrungen vorverlegt werden. Das neue Forum ist soweit voll funktionsfähig, allerdings sind noch nicht alle der gewohnten Funktionen vorhanden. Nach Möglichkeit werden wir sie in den nächsten Wochen nachrüsten. Dafür sollte es nun einige der Probleme lösen, die wir in den letzten Tagen, Wochen und Monaten hatten. Auch der Server ist nun potenter als bei unserem alten Hoster, wodurch wir nun langfristig den Tank mit Bytes vollgetankt haben.

    Anfangs mag die neue Boardsoftware etwas ungewohnt sein, aber man findet sich recht schnell ein. Wir wissen, dass ihr alle Gewohnheitstiere seid, aber gebt dem neuen Board eine Chance.
    Sollte etwas der neuen oder auch gewohnten Funktionen unklar sein, könnt ihr den "Wo issn da der Button zu"-Thread im Feedback nutzen. Bugs meldet ihr bitte im Bugtracker, es wird sicher welche geben die uns noch nicht aufgefallen sind. Ich werde das dann versuchen, halbwegs im Startbeitrag übersichtlich zu halten, was an Arbeit noch aussteht.

    Neu ist, dass die Boardsoftware deutlich besser für Mobiltelefone und diverse Endgeräte geeignet ist und nun auch im mobilen Style alle Funktionen verfügbar sind. Am Desktop findet ihr oben rechts sowohl den Umschalter zwischen hellem und dunklem Style. Am Handy ist der Hell-/Dunkelschalter am Ende der Seite. Damit sollte zukünftig jeder sein Board so konfigurieren können, wie es ihm am liebsten ist.


    Die restlichen Funktionen sollten eigentlich soweit wie gewohnt funktionieren. Einfach mal ein wenig damit spielen oder bei Unklarheiten im Thread nachfragen. Viel Spaß im ngb 2.0.

VB.net - Element auf Form zuerst laden (und anzeigen)

TheOnly1

RBTV | ngb | BMG
Veteran

Registriert
14 Juli 2013
Beiträge
8.902
Ort
Zimmer 237
Hallo,

ich habe gerade ein (vermutlich völlig banales) Problem: Ich habe ein Windowsform, auf dem ich einen Threeview lade.
Je nach Umfang kann es etwas dauern, bis sich der Threeview aufgebaut hat (die Daten werden aus einer DB abgerufen und dann noch hin und her gerödelt, damit sie für den Threeview passend sind).
Dadurch sieht es mitunter so aus, als ob sich die ganze Anwendung verabschiedet hat, weil man dann für ein paar Sekunden nur so ein halb geladenes Fenster sieht und sonst nix erkannbares passiert.

So...nun hätte ich gerne sowas wie einen Hinweis über dem Threeview stehen ("Achtung - Das Laden kann einen Augenblick in Anspruch nehmen").
Normalerweise würde ich da einfach ein Label nehmen, nur das Problem ist, dass das Label immer erst geladen (und angezeigt) wird, wenn der Threeview (und damit das gesamte Form) fertig geladen ist. Das ist natürlich sinnlos.

Frage:
Wie kriege ich es hin, dass das Label zuerst geladen und angezeigt wird und das erst dann der Threeview geladen wird?

Wie gesagt, vermutlich banal, aber irgendwie stehe ich auf dem Schlauch.
 

KaPiTN

♪♪♫ wild at heart ♪♫♫♪

Registriert
14 Juli 2013
Beiträge
29.138
Versteh die Frage nicht ganz. Wo wird den das Laden der Baumes aufgerufen, daß Du davor keine anderen Code aufrufen kannst?

Ansonsten würde ich die Daten für das Treeview gar nicht komplett laden. Immer erst laden, wenn ein Knoten geöffnet wird.

Grundsätzlich für viele Daten noch das Stichwort "Backroundworker" o.ä.
 

evillive

EXIL

Registriert
24 Juli 2013
Beiträge
930
@TheOnly1:

ja ein thread würde dir helfen.. aber wie sieht dein quellcode aus?

Initialisierung der Treeview (+ Ladevorgang)
dann Initialisierung des labels?
 

Timon3

Team ModMii

Registriert
17 Juli 2013
Beiträge
499
@TheOnly1: Falls dir die anderen Antworten nicht reichen, kannst du immer noch auf einen Splashscreen zurückgreifen. Das hab ich beispielsweise bei einer Anwendung gemacht, die sich mit einem Bluetooth-Gerät verbinden muss - da dies unter anderem länger dauern kann, genau wie bei dir, aktualisiere ich die Informationen auf dem Splashscreen und lasse die fertige Form erst anzeigen, sobald sie für die Interaktion mit dem User bereit ist.
 

TheOnly1

RBTV | ngb | BMG
Veteran

Registriert
14 Juli 2013
Beiträge
8.902
Ort
Zimmer 237
  • Thread Starter Thread Starter
  • #6
Ah schon mal danke für die Antworten. Bin noch nicht dazu gekommen da groß was zu zu schreiben. Ich versuche heute mal den entsprechenden Codeabschnitt zu posten, muss den aber erst vorbereiten. Da sind super-geheime Sachen drin und so. :D
Da will ich erst mal drüber gucken vorher.

Ich habe aber auch schon eine Lösungs-Idee aufgrund der Antworten hier. Mal schaun...
 

Hector

Board-Paladin

Registriert
16 Juli 2013
Beiträge
4.383
Hatte so ein ähnliches Problem auch mal. Ein Datenbanktool, dass mit verschiedenen Tabs arbeiten konnte. Problem war hier auch, sobald in Tab 1 irgendwas passierte, konnte man nix mehr anklicken, was die Tabs natürlich sinnlos machte. Mit Threats konnte ich die Sache dann auch lösen. Wobei das schon fast ein bisschen "Over the top" ist, für eine reine Anzeigegeschichte von 2 Sekunden. Hier würde ich auch eher zum Splashscreen greifen.
 

drfuture

Zeitreisender
Teammitglied

Registriert
14 Juli 2013
Beiträge
8.760
Ort
in der Zukunft
Oder das auslesen über nen Timer starten...
bei onload() den Timer auf Enabled stellen, im Timer die durchläufe zählen und beim 2. Durchlauf (z.B. ein Durchlauf 1s) das auslesen starten sowie den Timer wieder auf Disabled stellen.

Das wäre eine primitive Variante ohne einen Splash-Screen zu nutzen und mit Threads zu hantieren - wobei die Threads natürlich schöner sind :)
 

KaPiTN

♪♪♫ wild at heart ♪♫♫♪

Registriert
14 Juli 2013
Beiträge
29.138
Noch einmal der Hinweis, dass es reicht, nur die erste Ebene zu laden. Dann erübrigt sich alles andere meist schon.
 

Hector

Board-Paladin

Registriert
16 Juli 2013
Beiträge
4.383
Diese Spannung. Dass dieser ominöse Mister Burns nicht endlich mal hier schreibt, ob er sich nun letztendlich für einen Backroundworker oder einen Backroundworker entschieden hat.....Es zerreißt mich vor Neugier, wie er es gelöst hat! D:
 

TheOnly1

RBTV | ngb | BMG
Veteran

Registriert
14 Juli 2013
Beiträge
8.902
Ort
Zimmer 237
  • Thread Starter Thread Starter
  • #14
Ruhig bleiben. :D
Mr. Burns war Mi-Fr geschäftlich unterwegs und hat noch gar nichts weiter unternommen in der Frage. Ich denke morgen werde ich dazu kommen, mich weiter damit zu beschäftigen. ;)
 

TheOnly1

RBTV | ngb | BMG
Veteran

Registriert
14 Juli 2013
Beiträge
8.902
Ort
Zimmer 237
  • Thread Starter Thread Starter
  • #15
Zur Info: Ich habe mich für die Möglichkeit mit dem Backgroundworker entschieden.

Danke an alle, für die konstruktive Hilfe. :T
 
Oben