realbasic-nug.de
[Top] [All Lists]

Re: Timer

To: REALbasic NUG German <realbasic-nug dot de at lists dot realsoftware dot com>
Subject: Re: Timer
From: Claudius Sailer <Claudius at sailer-online dot de>
Date: Sat, 23 Apr 2005 16:53:46 +0200
Delivered-to: realbasic-nug dot de at lists dot realsoftware dot com
References: <BE902325 dot 3CC3%rudi dot maier at t-online dot de>
Hi Rudi,


Am 23. Apr 2005 um 16:07 Uhr schrieb Rudi Maier:

am 23.04.2005 15:49 Uhr schrieb Claudius Sailer unter
Claudius at sailer-online dot de:

Hi Rudi,

Am 23. Apr 2005 um 14:46 Uhr schrieb Rudi Maier:

Nun habe ich noch ein Problem. Ich will aus einer Metode heraus einen
Menüaufruf machen.

Du machst eine Methode in der auszuführende Code steht. Diese Methode
rufst Du aus dem MenüEvent auf und aus allen anderen Methoden.
Wie stelle ich sicher, dass der Code nicht ausgeführt werden kann, wenn das
Menü belegt d.h. ein Menüpukt ausgewählt ist z.B. Dialog offen?

Aus dem Menu Menü kannst Du aufrufe verhindern, wenn Du im App - Events

EnableMenuItems das definierst. Bei mir sieht das z.B. so aus. I einer Methode musst Du selber Abfragen einfügen um zu prüfen ob das ausgeführt werden darf.


Ciao


Claudius




  Dim w as Window
  Dim i, Ende as integer

  w=Window(0)
  if w isa ButtonLeiste and WindowCount>1 then
    w=Window(1)
  end if

  AppleAbout.Enable
  MenuPapierformat.Enable
  AblageVoreinstellungen.Enable

  if OpenNeu then
    //wenn Daten geladen dann Menüs aktivieren
    AblageStandardImport.Enable
    AblageProfitImport.Enable
    AblageMacGiroImport.Enable
    AblageExport.Enable
    AblageExportStandard.Enable
    MenuBackUp.Enable
    MenuExportSteuerfuchs.Enable

    MenuKurseAktualisieren.Enable

    MenuBasisSteuer.Enable
    BasisdatenFormulare.Enable
    BasisdatenSteuerfelder.Enable

    BearbeitenBuchungen.Enable
    MenuDepotverwaltung.Enable
    MenuMSQL.Enable

    ExtrasErgebnisse.Enable
    ExtrasMWStAuswertung.Enable
    ExtrasDBClean.Enable
    ExtrasDBDiagnose.Enable
    ExtrasStatistik.Enable
    ExtrasAnalyse.Enable
    ExtrasFensterZurueck.Enable

    //FensterMenü erstellen
    Ende=Ubound(OffeneFensterArray)
    OffeneFenster(0).checked=false
    if OffeneFenster(0).visible then OffeneFenster(0).visible=false
    For i=0 to Ende
      if i=0 then
if NOT OffeneFenster(0).visible then OffeneFenster(0).visible=true
      end if
      if OffeneFensterArray(i).title=w.title then
        OffeneFenster(i).checked=true
      else
        OffeneFenster(i).checked=false
      end if
      OffeneFenster(i).enable
    next

If BuchungenCalc=0 AND ErgebnisseCalc=0 AND AnalyseCalc=0 AND DepotCalc=0 AND MWStCalc=0 then
      //Wenn die Buchungen/Ergebnisse/Analysen kalkuliert werden
      AblageOpen.Enable
      AblageNeu.Enable
      AblageImport.Enable
      AblageExportStandard.Enable
      BearbeitenAllgemein.Enable
      BearbeitenBasisdaten.enable
      BasisdatenKonten.Enable
      BasisdatenKategoriegruppen.Enable
      BasisdatenKategorien.Enable
      BasisdatenDauerauftraege.Enable
      BasisdatenBuchungsMakros.enable
      BasisdatenKontoarten.enable
      BasisdatenKontogruppen.enable
      MenueDeleted.enable
    end if

If DepotCalc=0 AND ErgebnisseCalc=0 AND AnalyseCalc=0 AND OnlineStatus=0 then
      //Wenn die Depot/Ergebnisse/Analysen kalkuliert werden
      MenuBasisDepot.enable
      MenuWertpapiere.enable
      MenuWaehrungen.enable
      MenuWPArt.enable
      MenuOnlineAnbieter.enable
      MenuDepotKonten.enable
    end if

    if MWSTCalc=0 then
      MenuBasisMWSt.Enable
      BasisdatenMWSt.Enable
      BasisdatenMWStSatz.Enable
    end if

    if WindowCount>0 and w<>NIL then
      //Wenn Fenster offen sind, dann ist folgendes moeglich

//Apfel+W deaktivieren, wenn ein Fenster im Vordergrund ist in dem noch Threads laufen
      if w isa Buchungen AND BuchungenCalc<>0 then
        //Enabled=false ist default
      elseif w isa ergebnisse AND ErgebnisseCalc<>0 then
        //Enabled=false ist default
      elseif w isa Analyse AND AnalyseCalc<>0 then
        //Enabled=false ist default
      elseif w isa Depot AND DepotCalc<>0 then
        //Enabled=false ist default
      elseif w isa MWStAuswertung AND MWStCalc<>0 then
        //Enabled=false ist default
      elseif w isa ButtonLeiste AND WindowCount=1 then
        //Enabled=false ist default
      else
        AblageSchliessen.Enable
      end if
    else
      //kein Fenster offen
      //Enabled=false ist default
    end if

  else
    //keine Datenbank ist geladen
    AblageOpen.Enable
    AblageNeu.Enable

  end if

<Prev in Thread] Current Thread [Next in Thread>