XbpBrowse und PushButton im Header [ERLEDIGT]

Konzeptionelles, Technisches, Termine, Fragen zum Hersteller usw.

Moderator: Moderatoren

Antworten
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21200
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

XbpBrowse und PushButton im Header [ERLEDIGT]

Beitrag von Manfred »

Hi,

in dem Thread XbpBrowse Aufbau aber wie,

http://www.xbaseforum.de/viewtopic.php? ... nkopf#8978

wurde von Jimmy kurz angeschnitten, dass man einen PushButton in den Header einbauen kann, wenn man z.B. darüber einen Index für die Spaltensortierung schalten möchte.

Wie baut man so einen PushButton in den Header ein? Wie baut man generell andere Xbparts in Browserspalten ein? Ein kleiner Tipp wäre hilfreich. Ich habe im Moment überhaupt keine Vorstellung, wie sowas überhaupt anzugehen wäre.
Zuletzt geändert von Manfred am Mo, 18. Mai 2009 8:32, insgesamt 1-mal geändert.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
rassekst
UDF-Programmierer
UDF-Programmierer
Beiträge: 97
Registriert: Mi, 01. Feb 2006 23:49
Wohnort: Glauchau
Kontaktdaten:

Beitrag von rassekst »

Hallo Manfred,

ich habe das folgendermaßen gelößt:

Code: Alles auswählen

      oBrowse := XbpBrowse():new(oStapel:oGrp1,oStapel:oGrp1,{2,150},{oStapel:oGrp1:currentSize()[1]-4,oStapel:oGrp1:currentSize()[2]-165},,.F.)
      oBrowse:cursorMode    := XBPBRW_CURSOR_CELL
      oBrowse:softTrack     := .T.
      oBrowse:skipBlock     := {|n| DbSkipper(n) }
      oBrowse:goTopBlock    := {| | DbGoTop()    }
      oBrowse:goBottomBlock := {| | DbGoBottom() }
      oBrowse:phyPosBlock   := {| | Recno()      }
      oBrowse:firstPosBlock := {| | 0               }
      oBrowse:lastPosBlock  := {| | 100             }
      oBrowse:posBlock      := {| | DbPosition()    }
      oBrowse:goPosBlock    := {|n| DbGoPosition(n) }
      oBrowse:SizeCols      := .T.
      oBrowse:Itemmarked    := {| aRowCol, uNIL2, obj |IIF(aRowCol[2]<3,EVAL({|obj| obj:right(),IIF(aRowCol[2]=1,obj:right(),NIL),obj:refreshCurrent()},obj),NIL), ANZ_WERTE() }
      oBrowse:ItemSelected  := {|| MARK_DS(oBrowse,oStapel), SetAppFocus(oBrowse)}
      oBrowse:itemRbDown    := {|aPos, aColPos, obj| obj:navigate( XBPBRW_Navigate_Skip, ( aColPos[1] - obj:rowPos )),obj:navigate( XBPBRW_Navigate_SkipCols, ( aColPos[2] - obj:colPos )),obj:refreshAll(),KONTEX_MENU(oBrowse,aPos) }
      oBrowse:headerRbDown  := {| aMousePos, nColPos, obj | SORTCOL(obj,nColPos) }
      oBrowse:create()
      oBrowse:setFontCompoundName( "8.Tahoma" )

      aPresParam1 := { ;
                     { XBP_PP_COL_HA_CAPTION     , NIL                        },;
                     { XBP_PP_COL_HA_FGCLR       , GRA_CLR_DARKBLUE           },;
                     { XBP_PP_COL_HA_BGCLR       , GraMakeRGBColor({228,228,228})},;
                     { XBP_PP_COL_DA_FGCLR       , GRA_CLR_BLACK              },;
                     { XBP_PP_COL_DA_BGCLR       , GraMakeRGBColor({248,255,255})},;
                     { XBP_PP_COL_DA_HILITE_FGCLR, GRA_CLR_WHITE              },;
                     { XBP_PP_COL_DA_HILITE_BGCLR, GraMakeRGBColor({40,128,255}) },;
                     { XBP_PP_COL_DA_ROWSEPARATOR, XBPCOL_SEP_DOTTED          },;
                     { XBP_PP_COL_DA_COLSEPARATOR, XBPCOL_SEP_NONE            },;
                     { XBP_PP_COL_DA_CHARWIDTH   , NIL                        },;
                     { XBP_PP_COL_HA_COMPOUNDNAME, '8.Tahoma Fett'            },;
                     { XBP_PP_COL_DA_CELLFRAMELAYOUT, XBPFRAME_BOX            }}

      aPresParam2 := { ;
                     { XBP_PP_COL_HA_CAPTION     , NIL                        },;
                     { XBP_PP_COL_HA_FGCLR       , GRA_CLR_DARKBLUE           },;
                     { XBP_PP_COL_HA_BGCLR       , GraMakeRGBColor({228,228,228})},;
                     { XBP_PP_COL_DA_FGCLR       , GRA_CLR_DARKBLUE          },;
                     { XBP_PP_COL_DA_BGCLR       , GraMakeRGBColor({242,242,242})},;
                     { XBP_PP_COL_DA_HILITE_FGCLR, GRA_CLR_BLACK              },;
                     { XBP_PP_COL_DA_HILITE_BGCLR, GRA_CLR_YELLOW             },;
                     { XBP_PP_COL_DA_ROWSEPARATOR, XBPCOL_SEP_DOTTED          },;
                     { XBP_PP_COL_DA_COLSEPARATOR, XBPCOL_SEP_NONE            },;
                     { XBP_PP_COL_DA_CHARWIDTH   , NIL                        },;
                     { XBP_PP_COL_HA_COMPOUNDNAME, '8.Tahoma Fett'            },;
                     { XBP_PP_COL_DA_COMPOUNDNAME, '8.Tahoma'            },;
                     { XBP_PP_COL_DA_CELLFRAMELAYOUT, XBPFRAME_BOX            }}


      FOR i = 1 TO LEN(aFelder)
          IF i = 1 .OR. TYPE(aFelder[i,3]) <> 'U'
             IF i > 2
                aPresParam1[ 1,2] := '     '+TRIM(aFelder[i,1])
                aPresParam1[10,2] := aFelder[i,2]
                oXbpColumn        := XbpColumn():new(,,,,aPresParam1)
             ELSE
                aPresParam2[ 1,2] := TRIM(aFelder[i,1])
                aPresParam2[10,2] := aFelder[i,2]
                oXbpColumn        := XbpColumn():new(,,,,aPresParam2)
             ENDIF
             oXbpColumn:dataLink  := IIF(i=1,aFelder[i,3],FIELDBLOCK(aFelder[i,3]))
             oXbpColumn:type      := IIF(i=1,XBPCOL_TYPE_ICON,XBPCOL_TYPE_TEXT)
             oXbpColumn:cargo     := aFelder[i,3]
             IF i = 2
                oXbpColumn:colorBlock := {|a| IIF(error <> T('kein Fehler'),{GRA_CLR_RED,NIL},{GRA_CLR_DARKGREEN,NIL})}
             ENDIF
             oXbpColumn:create()
             oBrowse:addColumn( oXbpColumn )
          ELSE
             stru_err = .T.
          ENDIF
      NEXT


STATIC FUNCTION sortcol ( oBrowse, nNr )

LOCAL cIndexName
LOCAL i
LOCAL cHeadingText
LOCAL nSortArt
LOCAL offs := 0
LOCAL old_sele := SELECT()

IF nNr > 2

   SELE 2

   IF nNr > 0
      IF oBrowse:getColumn(nNr):heading:cargo <> NIL
         cRichtung = oBrowse:getColumn(nNr):heading:cargo[2]
      ELSE
         cRichtung = ''
      ENDIF

      IF EMPTY(cRichtung)
         cRichtung = '0'
      ELSE
         IF cRichtung = '0'
            cRichtung = '1'
         ELSE
            cRichtung = ''
         ENDIF
      ENDIF

      IF !EMPTY(cRichtung)
         cIndexName := SUBSTR(sort_name,1,AT('.',sort_name)-1)+'_'+STRZERO(nNr+5,2)+cRichtung+'.ntx'
         IF .NOT. FILE(cIndexName)
            indexfeld = oBrowse:getColumn(nNr):cargo
            IF cRichtung = '0'           // aufsteigend
               INDEX ON &indexfeld TO (cIndexName)
            ELSE
               INDEX ON &indexfeld TO (cIndexName) DESCENDING
            ENDIF
         ELSE
            SET INDEX TO (cIndexName)
         ENDIF
      ELSE
         SET ORDER TO
      ENDIF

      // alle Spaltentitel wieder normal
      FOR i = 3 TO oBrowse:colCount
          IF FIELDINFO(i,FLD_TYPE) <> 'M'
             cHeadingText = oBrowse:getColumn(i):heading:getCell(1)
             IF oBrowse:getColumn(i):heading:cargo <> NIL
                oBrowse:getColumn(i):heading:cargo[1]:destroy()
                oBrowse:getColumn(i):heading:cargo := NIL
             ENDIF
             oBrowse:getColumn(i):heading:setCell(1,'     '+ALLTRIM(cHeadingText),'C',.F.)
          ENDIF
      NEXT

      IF !EMPTY(cRichtung)
         oBmp := XbpBitmap():new():create()
         oBmp:load(, IIF(cRichtung='0',402,401) )
         oBmp:transparentClr := GRA_CLR_PALEGRAY

         oStatic := XbpStatic():new()
         oStatic:type := XBPSTATIC_TYPE_BITMAP
         oStatic:autoSize := .T.
         oStatic:caption := oBmp
         oStatic:XbpStatic:create(oBrowse:getColumn(nNr):heading, , {4,6}, )

         oBrowse:getColumn(nNr):heading:cargo = { oStatic, cRichtung }
         cHeadingText = oBrowse:getColumn(nNr):heading:getCell(1)
         oBrowse:getColumn(nNr):heading:setCell(1,'     '+ALLTRIM(cHeadingText),'C',.F.)
      ENDIF

      oBrowse:refreshAll()

      PostAppEvent(xbeBRW_ItemMarked,{RECNO(),3},,oBrowse)
   ENDIF

   SELECT(old_sele)

ENDIF

RETURN(.T.)

durch

Code: Alles auswählen

        oBmp:load(, IIF(cRichtung='0',402,401) )
 
wird ein Bitmap (kleines Dreieck) geladen.

Ich hoffe das hilft Dir weiter.
_________________________
Grüße,

Steffen
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12909
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 46 Mal

Re: XbpBrowse und PushButton im Header

Beitrag von AUGE_OHR »

Hi,
Manfred hat geschrieben: in dem Thread XbpBrowse Aufbau aber wie,

http://www.xbaseforum.de/viewtopic.php? ... nkopf#8978

wurde von Jimmy kurz angeschnitten, dass man einen PushButton in den Header einbauen kann, wenn man z.B. darüber einen Index für die Spaltensortierung schalten möchte.
Nicht ganz ... sondern nur die Funktionalität wie ein Pushbutton. Hierzu
nehme ich den "o:headerLbDown" Slot und steuere so das unter dem
Thread angegebenen Beispiel

Code: Alles auswählen

oBrowse:headerLbDown  := {| aMousePos, nColPos, oSelf | ;
                             ORDSETINDEX(nColPos,oSelf) } 
gruss by OHR
Jimmy
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21200
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Beitrag von Manfred »

Moin,

@Jimmy
nun, ich bin jetzt schon so weit, wie ich eigentlich sein möchte. Ich habe es geschafft, (hoffe ich jedenfalls, habe es noch nicht tiefgehend getestet) über den Slot :headerRbDown den Index zu wechseln. Und das sehr flexibel. Eigentlich recht einfach. Wenn es denn wirklich überall und immer so klappt, wie ich es mir jetzt vorstelle.
Das Blöde ist halt, jetzt würde ich gerne den Buttoneffekt beim Drücken haben und dann im Headerfeld noch die Farbe ändern, damit man weiß, wo jetzt gerade der Index drauf liegt. Das werde ich mir heute mal zur Brust nehmen.
Wo findest Du denn eigentlich den o:headerLbDown? Den kann ich nicht finden.

@Steffen
bei Dir muß ich sagen, dass ich wohl Tomaten auf den Augen habe. Ich kann nicht erkennen, wo die Button gemacht werden?
Kannst Du mir weiterhelfen?
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 16517
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Hat sich bedankt: 111 Mal
Danksagung erhalten: 48 Mal
Kontaktdaten:

Beitrag von Martin Altmann »

Moin moin,
Manfred hat geschrieben:bei Dir muß ich sagen, dass ich wohl Tomaten auf den Augen habe. Ich kann nicht erkennen, wo die Button gemacht werden?
Kannst Du mir weiterhelfen?
in seinem letzten IF-ENDIF-Konstrukt.

Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21200
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Beitrag von Manfred »

Hi Martin,

meinst Du das hier?

Code: Alles auswählen

IF !EMPTY(cRichtung)
         oBmp := XbpBitmap():new():create()
         oBmp:load(, IIF(cRichtung='0',402,401) )
         oBmp:transparentClr := GRA_CLR_PALEGRAY

         oStatic := XbpStatic():new()
         oStatic:type := XBPSTATIC_TYPE_BITMAP
         oStatic:autoSize := .T.
         oStatic:caption := oBmp
         oStatic:XbpStatic:create(oBrowse:getColumn(nNr):heading, , {4,6}, )

         oBrowse:getColumn(nNr):heading:cargo = { oStatic, cRichtung }
         cHeadingText = oBrowse:getColumn(nNr):heading:getCell(1)
         oBrowse:getColumn(nNr):heading:setCell(1,'     '+ALLTRIM(cHeadingText),'C',.F.)
      ENDIF 
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 16517
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Hat sich bedankt: 111 Mal
Danksagung erhalten: 48 Mal
Kontaktdaten:

Beitrag von Martin Altmann »

Yup.
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21200
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Beitrag von Manfred »

Sach ma,

kriegst Du Zinsen für jedes gesparte Wort? :lol:

Ich sehe nichts in dem Abschnitt. Bin ich blöde oder was?

Oder geht ein echter PushButton nicht und es wird nur einer simuliert?
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15697
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 66 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Beitrag von brandelh »

Manfred hat geschrieben: Oder geht ein echter PushButton nicht und es wird nur einer simuliert?
BINGO ;-)
Gruß
Hubert
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 16517
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Hat sich bedankt: 111 Mal
Danksagung erhalten: 48 Mal
Kontaktdaten:

Beitrag von Martin Altmann »

Manfred hat geschrieben:Sach ma,
kriegst Du Zinsen für jedes gesparte Wort? :lol:
Yup. :wink: Spare in der Zeit, dann hast Du in der Not.
Manfred hat geschrieben:Ich sehe nichts in dem Abschnitt. Bin ich blöde oder was?
Oder geht ein echter PushButton nicht und es wird nur einer simuliert?
In dem Fall ist er simuliert. Es wird eine Grafik angezeigt, die einen nach oben oder nach unten zeigenden Pfeil anzeigt - je nach Sortierung.
Aber Du kannst doch auf dem Beispiel aufbauen, oder nicht?
Versuche doch mal, statt des oStatic in den Header einzubauen, einen XbpPushbutton.
Oder setze auf den oStatic statt des Bitmaps den XbpPushbutton.

Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21200
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Beitrag von Manfred »

jaja,

veräppelt mich ruhig. Als wenn ich nicht schon Hektik genug hätte.

Na gut, wenn es so nicht geht. (so was blödes aber auch).

Martin, Du warst schneller.

Ich habe ja deshalb gefragt, weil ich überhaupt nicht weiß/wußte wie ich überhaupt vorgehen kann/muß. Das ist aus meiner Sicht alles nicht so trivial.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21200
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Beitrag von Manfred »

Hm,

ich finde auch im Moment keinen Anhaltspunkt, wie ich nach dem Create die Farbe des Headerfeldes ändern kann. Das ist doch bestimmt recht einfach? Ich finde es nicht.
So würde ich zunächst erst die Farbe ändern für die Spalten, für eine Sortierung vorhanden ist, bzw. für die Spalte, die gerade sortiert aktiv ist.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
rassekst
UDF-Programmierer
UDF-Programmierer
Beiträge: 97
Registriert: Mi, 01. Feb 2006 23:49
Wohnort: Glauchau
Kontaktdaten:

Beitrag von rassekst »

@Manfred

kleine Bitte am Rande... Erst lesen, dann nachdenken, vielleicht nochmal lesen und wenns dann habert mal nachfragen.
Du schießt Deine Fragen sehr schnell ins Forum, vielen antworten dann noch darauf und dann sagst Du, "ich habe eigentlich alles schon fertig!" .
Bitte stelle in Zukunft Deine Fragen konkreter damit eine konkretere Antwort möglich ist.
Antworten und alles Mundgerecht darstellen kostet auch seine Zeit.

Danke für Dein Verständnis.

@Martin
Stimme Dir zu "In der Kürze steckt die Würze".
Zuletzt geändert von rassekst am So, 27. Jul 2008 12:38, insgesamt 1-mal geändert.
_________________________
Grüße,

Steffen
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21200
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Beitrag von Manfred »

Hi Steffen,

sorry, dass ich Dich jetzt hier korrigieren muß. Vielleicht solltest DU nicht so schnell schießen. Wenn Du meinen Text genau gelesen hättest, dann wäre klar gewesen, dass ich eine Notlösung gefunden habe. Die Sache mit dem PushButton war/ist schon wichtig, aber ich habe es zunächst nur über die rechte Maustaste gemacht, was aber zur Folge hat, dass meine derzeitige Lösung keine Pushbuttoneffekt hat, sprich es wird nichts eingedrückt. Und das hätte ich ganz gerne.

Und außerdem kannst Du bei jeder Frage, die Du hier stellst garantieren, dass Du nicht kurz danach selbst auf eine Lösung kommst? Wenn das hier eingeführt wird, oder werden soll, was Du mir gerade unterstellst, dann könnte man jedes Forum direkt dicht machen, oder erst gar nicht eröffnen. Wenn ich eine gewisse Zeit vor meiner Frage hier probiere und auf keinen grünen Zweig komme, dann stelle ich hier die Frage. Es gibt mir, Dir und sonstwem keiner eine Garantie, dass die Lösung dann nicht ganz plötzlich im Kopf reift.

Wenn Du allerdings trotzdem eine Garantie haben willst, dann kaufe einen Toaster.

So, und nun nix für ungut.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 16517
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Hat sich bedankt: 111 Mal
Danksagung erhalten: 48 Mal
Kontaktdaten:

Beitrag von Martin Altmann »

:wave:
Lasst mich mal folgendes in die Runde werfen (weil es gerade so gut hier hin passt - ist aber allgemein gemeint :!:):
  • Nicht jeder, der in einem Forum schreibt, schreibt gerne oder gerne viel.
    Jeder, der eine Frage hat, sollte für eine Antwort dankbar sein.
    Jeder, der antwortet, sollte auch damit rechnen, dass die Antwort nicht die gewünschte sein kann.
    Ein Forum ohne Fragen hat nicht viel Nutzen.
    Ein Forum nur mit Fragen hat ebenfalls nicht viel Nutzen.
In diesem Sinne,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21200
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Beitrag von Manfred »

Ja sicher,

Du hast Recht. Ich weiß auch, dass ich hier sicherlich zu denen gehöre die die meisten Fragen stellen und die wenigsten helfenden Antworten geben können.

Aber ich kann nun mal nichts dafür, wenn ich nach teilweise stundenlangem Suchen und Experimentieren, mich dazu durchringe mein Problem hier reinzustellen, um dann sehr oft nach einer kurzen Zeit doch selbst die/eine Lösung zu finden, oder festzustellen, dass es eigentlich eine Bagatellfrage war. Das ärgert mich auch. Aber es ist nun mal so.

Wenn hier jemand eine Formel weiß, anhand derer die Zeit zu berechnen geht, die man verstreichen lassen muß/soll, bevor man seine Frage öffentlich bespricht, dann bitte, immer her damit.

So, und jetzt möchte ich auch (selten genug) das Thema nicht unnötig breittreten. Ich denke mal, es war sowieso nicht so gemeint, wie es evtl. drohen könnten auszuarten.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 16517
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Hat sich bedankt: 111 Mal
Danksagung erhalten: 48 Mal
Kontaktdaten:

Beitrag von Martin Altmann »

Hallo Manfred,
meine Punkte waren allgemeiner (und grundsätzlicher) Natur.
Du weisst, dass ich grundsätzlich dankbar bin für Fragen (und Antworten), da beides durchaus auch anderen Mitlesenden helfen kann :!:
Und leider kennt in einem solchen Forum nicht Jeder Jeden perönlich - das wäre oft hilfreich(er)...

Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
rassekst
UDF-Programmierer
UDF-Programmierer
Beiträge: 97
Registriert: Mi, 01. Feb 2006 23:49
Wohnort: Glauchau
Kontaktdaten:

Beitrag von rassekst »

Hallo Manfred,

Bei meiner Bemerkung ging es nicht um den Sachverhalt das einer seine Lösung selber findet, sondern dass in diesem Beispiel einige Lösungsansätze vorgeschlagen wurden die gerade den Eindrück(Pushbuttoneffekt) bewerkstelligen. Es kann gut sein das Du die Sache nicht durchschaut hast.
Leider konnte ich Dir nicht die Lösung geben die genau auf Deine Vorstellungen trifft.

Um es nochmals klar zu sagen, auch ich freue mich über die rege Beteiligung im Forum.
_________________________
Grüße,

Steffen
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21200
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Beitrag von Manfred »

Hi Steffen,

es kann nicht nur gut sein, sondern es war so: Ich habe die Sache nicht durchschaut. Ich dachte zu Anfang, ich wäre nur blöde. Aber ich habe den Pushbutton gesucht und nicht gefunden. Sowas nennt man dann auch schon mal Scheuklappen aufhaben. :lol:

Trotzdem nochmals Danke für Deine Hilfe, ich werde sie mir in den nächsten Tagen zu Gemüte führen, während ich an meiner Idee weiter herum bastel.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21200
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Beitrag von Manfred »

So,

nach langem Hin- und Hergewusel, sieht es so aus, als wenn ich das habe, was ich haben wollte. Zwar im Moment noch nicht mit dem Buttoneffekt, aber ansonsten sieht es so aus, als wenn ich jetzt mit allen Indexfeldern hin und her arbeiten kann. Im Header mit der rechten Maustaste anklicken und dann wird fleißig der Index gewechselt und der jeweils aktive angezeigt. Und auf den ersten Blick für alle DB. Natürlich nur mit den Standard Indexdateien. Ein zusätzliches Sortieren ist nicht vorgesehen.

PS: Ach so, bevor ich es vergesse:

@Steffen,

in Deinem Beispiel waren ein paar Dinge, die mir gut weitergeholfen haben..
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Antworten