XBTOOLS bei Version 2.x

Von der Installation bis zur Auslieferung der Applikation

Moderator: Moderatoren

unicorn
Cut&Paste-Entwickler
Cut&Paste-Entwickler
Beiträge: 40
Registriert: Di, 25. Apr 2017 17:23
Wohnort: Umgebung Stuttgart

Re: XBTOOLS bei Version 2.x

Beitrag von unicorn »

AUGE_OHR hat geschrieben:du beschreibst wieder das "drum-herum"
Hi Jimmy,

drum-herum und falsche Wortwahl, ist vermutlich wieder falsch formuliert von mir. Die bisherige Anwendung ist funktional / prozedural programmiert. Ist der Ansatz tatsächlich verbesserungswürdig?
AUGE_OHR hat geschrieben: allerdings wenn dein Chef selbst es nicht schafft die App auf GUI umzustellen
Ich weiß nicht, ob mein Chef vorher Clipper programmiert hat, ich denke aber schon. Aus dieser Anwendung ist dann vor 10 oder 15 Jahren unser Kassensystem in XBase++ entstanden.
Um die Dinge neu zu überdenken (den Code, nicht z.B. das Rechensystem), bin jetzt ich da. Mir ist nicht ganz klar wieso mein Chef es können müsste, GUI-Umbau zu beherrschen. Eine Erläuterung hierzu würde mich freuen.
Gruß,
Jannik (das verträumte Einhorn, by Jan)
Benutzeravatar
Rudolf
Programmier-Gott
Programmier-Gott
Beiträge: 1418
Registriert: Mo, 02. Jan 2006 23:03
Wohnort: Salzburg/Österreich
Kontaktdaten:

Re: XBTOOLS bei Version 2.x

Beitrag von Rudolf »

Hallo Jannik,
mit eXpress++ kannst du sehr einfach und schnell auf GUI umstellen, auch ohne große Kennntnisse über objektorientiertes Programmieren. Ist fast der gleiche Code wie in Clipper. Die Logik kannst Du dabei belassen, wozu auch ändern wenn es ein bewährtes System ist.
Grüße
Rudolf
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: XBTOOLS bei Version 2.x

Beitrag von AUGE_OHR »

unicorn hat geschrieben:Mir ist nicht ganz klar wieso mein Chef es können müsste, GUI-Umbau zu beherrschen.
ich verlange von meinen Angestellten nichts was ich nicht selbst tun "könnte" !

du bist doch nicht als Xbase++ "Spezialist" eingekauft worden sondern ein Newbie in Xbase++.
wie also sollst du so was machen wenn du deinen Chef nicht fragen kannst ?
gruss by OHR
Jimmy
Benutzeravatar
HaPe
1000 working lines a day
1000 working lines a day
Beiträge: 995
Registriert: So, 15. Nov 2015 17:44
Wohnort: 71665 Vaihingen-Enz
Hat sich bedankt: 17 Mal
Danksagung erhalten: 15 Mal

Re: XBTOOLS bei Version 2.x

Beitrag von HaPe »

Hallo Jimmy !
wie also sollst du so was machen wenn du deinen Chef nicht fragen kannst ?
Sein Chef stellt ihn damit auf die Probe ob er sich selbst "freischwimmen" kann d.h. in der Lage ist sich Xbase++ selbst beizubringen.
Wenn er das alleine schafft, steigt er gewaltig im Ansehen seines Chefs.
Das Forum und die XUG-Treffen können dabei helfen ...
--
Hans-Peter
Benutzeravatar
Rudolf
Programmier-Gott
Programmier-Gott
Beiträge: 1418
Registriert: Mo, 02. Jan 2006 23:03
Wohnort: Salzburg/Österreich
Kontaktdaten:

Re: XBTOOLS bei Version 2.x

Beitrag von Rudolf »

Hallo,
den Chef möchte ich sehen der alles kann was seine Mitarbeiter können ;-) Außer in kleinen Firmen natürlich.
Grüße
Rudolf
unicorn
Cut&Paste-Entwickler
Cut&Paste-Entwickler
Beiträge: 40
Registriert: Di, 25. Apr 2017 17:23
Wohnort: Umgebung Stuttgart

Re: XBTOOLS bei Version 2.x

Beitrag von unicorn »

Gibt es eine Möglichkeit,

wie bei C den Eingabepuffer zu leeren? (fflush(stdin))
Gruß,
Jannik (das verträumte Einhorn, by Jan)
Benutzeravatar
Koverhage
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2470
Registriert: Fr, 23. Dez 2005 8:00
Wohnort: Aalen
Hat sich bedankt: 102 Mal
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: XBTOOLS bei Version 2.x

Beitrag von Koverhage »

Schau mal in der Hilfe nach
CLEAR TYPEAHEAD
Dein Chef sollte Dir echt ein CLIPPER Handbuch oder ähnliches schenken.
Gruß
Klaus
unicorn
Cut&Paste-Entwickler
Cut&Paste-Entwickler
Beiträge: 40
Registriert: Di, 25. Apr 2017 17:23
Wohnort: Umgebung Stuttgart

Re: XBTOOLS bei Version 2.x

Beitrag von unicorn »

Hi,

gibt es eine Möglichkeit bei einem Programm im Textmodus den Nullpunkt zu verändern?

Sprich:

Oben links des Programms ist der Ankerpunkt [0, 0]. Ist XBase in der Lage, diesen Punkt um [x, x] zu verschieben und alle Angaben für Positionierungen relativ zu diesem Punkt zu berechnen?

Grund:

Programm läuft bisher nicht in Vollbild. Wir wollen das Programm jetzt auf Vollbild bringen, und die bisherige Anzeige einfach in die Mitte setzen, ohne dass wir alles Positionierungen neu schreiben müssen (sind sehr viele).

Danke im Voraus :)
Gruß,
Jannik (das verträumte Einhorn, by Jan)
matyschik
UDF-Programmierer
UDF-Programmierer
Beiträge: 54
Registriert: Do, 14. Dez 2006 0:08

Re: XBTOOLS bei Version 2.x

Beitrag von matyschik »

Der Vollbidmodus ging nur bis Windows XP. Danach nicht mehr.
Mit SETMODE(xx,xx) kannst du zwar das CRT Fenster vergößern, jedoch müssen
dann alle anderen SAY Einstellungen gegebenfalls auch geändert werden.

Freundliche FlagShip Grüße
Johann
Freundliche FlagShip Grüße
Johann
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: XBTOOLS bei Version 2.x

Beitrag von AUGE_OHR »

hm ... ich denke Xbase++ kann keinen "Vollbild-Modus".
wie bei einem CMD Fenster wird die Grösse durch "DOS" Auflösung x Font vorgegeben (Appsys.PRG)

---

den "Nullpunkt" zu verschieben, nur damit es in der Mitte erscheint, ist eine merkwürdige Idee.

du kannst aber ein XbpDialog() als Parent "maximieren" und auf der o:DrawingArea ein oCRT "zentrieren"

Code: Alles auswählen

   CenterControl(oCRT,oDialog:DrawaingArea)
gruss by OHR
Jimmy
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15688
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: XBTOOLS bei Version 2.x

Beitrag von brandelh »

Das oXbpCrt Fenster sollte direkt auf dem Desktop zentriert werden können.
Schau mal in der Wissensbasis nach meinem Beitrag für Fonts im crt Fenster festlegen.
Gruß
Hubert
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: XBTOOLS bei Version 2.x

Beitrag von AUGE_OHR »

brandelh hat geschrieben:Das oXbpCrt Fenster sollte direkt auf dem Desktop zentriert werden können.
so lange du den Desktop "siehst" wirkt es nicht als "Vollbild" ... der User könnte mit der Maus noch Unsinn anstellen

wenn du ein Xbpdialog() als Parent verwendest kannst du es "blockieren" für die oCRT App.
diese ist auch der Weg den ich für eine Hybrid App empfehlen würde um XbParts "über" ein oCRT Fenster zu legen
gruss by OHR
Jimmy
ramses
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2513
Registriert: Mi, 28. Jul 2010 17:16
Hat sich bedankt: 12 Mal
Danksagung erhalten: 77 Mal

Re: XBTOOLS bei Version 2.x

Beitrag von ramses »

matyschik hat geschrieben:Mit SETMODE(xx,xx) kannst du zwar das CRT Fenster vergößern, jedoch müssen
dann alle anderen SAY Einstellungen gegebenfalls auch geändert werden.
Dies ist nicht unbedingt der Sinnvollste weg .... besser geht es in der APPSYS() die Anzahl Zeilen/Spalten einstellen und über die Font-Breite und Font-Höhe die grösse des Fensters.

etwas so

Code: Alles auswählen

// aufbau des Fensters
procedure appsys()

#define DEF_ROWS       25
#define DEF_COLS       80
#define DEF_FONTHEIGHT 28
#define DEF_FONTWIDTH  14

    LOCAL aSizeDesktop, aPos

    public oXbpCrt
    public oDC := .f.
    public oPS := .f.
    public oPSD := .f.

    // Bestimmen der Fensterposition (Anordnen in der Mitte
    // des Desktop-Fensters)
      aSizeDesktop    := AppDesktop():currentSize()
      aPos            := { (aSizeDesktop[1]-(DEF_COLS * DEF_FONTWIDTH))  /2, ;
                           (aSizeDesktop[2]-(DEF_ROWS * DEF_FONTHEIGHT)) /2  }

      // XbpCRT-Fenster erzeugen
      oXbpCrt := XbpCrt():New ( , , aPos, DEF_ROWS, DEF_COLS )
      oXbpCrt:FontWidth  := DEF_FONTWIDTH
      oXbpCrt:FontHeight := DEF_FONTHEIGHT
      oXbpCrt:title      := "Programmname"
//       oXbpCrt:icon := 100   // icon 1

      oXbpCrt:FontName   := "Courier New"   // Alaska Crt"
      oXbpCrt:Create()

    SetAppWindow ( oXbpCrt )
    oXbpCrt:toFront()
    oXbpCrt:autoFocus := .f.
    oXbpCrt:useShortCuts := .F.
    setappfocus( oXbpCrt )
   
return

ich verwende diese Variante für einige aus der Clipper-Zeit übernommen Programme ...

Gruss Carlo
Valar Morghulis

Gruss Carlo
matyschik
UDF-Programmierer
UDF-Programmierer
Beiträge: 54
Registriert: Do, 14. Dez 2006 0:08

Re: XBTOOLS bei Version 2.x

Beitrag von matyschik »

Hallo Carlo,

dieser Weg ist eine hervorragende Lösung. Besten Dank! Da ich alle neuen
Programme mit FlagShip erstelle kommt diese sehr gute Lösung für mich leider
zu spät. Für Xbase++ im CRT Modus Programmierer ein sehr guter Aufhänger.

Freundliche FlagShip Grüße
Johann
Freundliche FlagShip Grüße
Johann
ramses
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2513
Registriert: Mi, 28. Jul 2010 17:16
Hat sich bedankt: 12 Mal
Danksagung erhalten: 77 Mal

Re: XBTOOLS bei Version 2.x

Beitrag von ramses »

Hallo Johan

das ist schön für dich.

Hätte ich nicht viele Mann-Jahre Entwicklungszeit in Xbase++ Programme gesteckt würde ich vielleicht das selbe tun.
Jedoch kenne ich Flagship nicht, Harbour verwende ich für Tools auf FreeBSD.
Harbour würde ich aus verschiedenen Gründen, es kann z.B. verglichen mit xbase zuwenig, niemals für Programme auf Windows verwenden.
Ich bin auch nicht mit allem von Xbase++ zufrieden und hatte auch eine Zeit der grossen Zweifel....

Wir, ich und meine Kunden, haben uns jetzt entschieden bis auf weiteres ausschiesslich die aktuellste Xbase++ Version zu verwenden.
Für uns gibt es keine Alternative zu Xbase, es steckt zuviel Arbeit und Geld in den Projekten.
( Alaska braucht ja auch zahlende Kunden, sonst geht das "Schiff XBase++" unter ....)

Gruss Carlo
Valar Morghulis

Gruss Carlo
unicorn
Cut&Paste-Entwickler
Cut&Paste-Entwickler
Beiträge: 40
Registriert: Di, 25. Apr 2017 17:23
Wohnort: Umgebung Stuttgart

Re: XBTOOLS bei Version 2.x

Beitrag von unicorn »

Hi Leute,
danke schonmal für eure Antworten. Tatsächlich ist es aber so, dass es mir leider nicht hilft, was aber daran liegt das ich mal wieder nicht in der Lage war, meine Frage richtig zu formulieren.

Was ich mit Vollbildmodus meinte, ist ein maximiertes Fenster :banghead: ich weiß nicht warum ich zurzeit es nicht schaffe meine Gedanken richtig darzulegen =P~

Der Punkt ist - bisher ist die Lösung ungefähr so wie die von Carlo, nur eben nicht maximiert, also den Desktop füllend.

Unser Kunde (arbeite inzwischen an einem Projekt für einen Kunden von uns mit) meint, der Rest, den man vom Desktop sieht (Icons, Wallpaper, etc) stört ihn und er hätte gerne stattdessen das Fenster maximiert dann lieber einen grauen Rahmen drumrum, wenn die Programmierung für unterschiedliche Auflösungen zu aufwendig wird.

Dazu hatte ich die Idee, das XBase evtl. in der Lage ist, den Nullpunkt für die Angabe der Elemente (oben links Ecke) an einen anderen Punkt des Fensters zu setzen, damit man den Text relativ zur Displayauflösung mittig positionieren kann, sodass wir nur ausprobieren müssen, mit welchen Parametern der Text in der Mitte wäre, statt jedes einzelne Feld neu positionieren zu müssen.

Danke für eure Hilfe! :roll:
Gruß,
Jannik (das verträumte Einhorn, by Jan)
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 16502
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Hat sich bedankt: 111 Mal
Danksagung erhalten: 48 Mal
Kontaktdaten:

Re: XBTOOLS bei Version 2.x

Beitrag von Martin Altmann »

Moin Jannik,
Carlos Ansatz ist der einfachste und sicherlich beste. Das Fenster im Vollbild und die Schrift und restlichen Element groß genug. Damit brauchst Du nichts umpositionieren.

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.
unicorn
Cut&Paste-Entwickler
Cut&Paste-Entwickler
Beiträge: 40
Registriert: Di, 25. Apr 2017 17:23
Wohnort: Umgebung Stuttgart

Re: XBTOOLS bei Version 2.x

Beitrag von unicorn »

Hi Martin,

ich stelle die Frage, da schon ca. 10.000(+) Code bestehen, mit extrem viel gesetzten Feldern, Boxen etc. Eine Verschiebung des Nullpunkts wäre in diesem Fall (IMHO) ja die einfachere Lösung.
Denn wenn ich den Code von Carlo richtig verstehe, dann ist das ja hauptsächlich ein maximiertes Fenster, oder?
Gruß,
Jannik (das verträumte Einhorn, by Jan)
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: XBTOOLS bei Version 2.x

Beitrag von AUGE_OHR »

unicorn hat geschrieben:Der Punkt ist - bisher ist die Lösung ungefähr so wie die von Carlo, nur eben nicht maximiert, also den Desktop füllend.
wie ich sagte musst du 1 Ebene "tiefer" ansetzten.
in die Appsys.PRG kommt ein XbpDialog() und auf der o:DrawingArea dann das oCRT

Code: Alles auswählen

PROCEDURE APPSYS
   oDlg := XpbDialog():New(AppDesktop(),,{0.0},AppDesktop():CurrentSize())
   ...
   oDlg:Create()
RETURN

PROCEDURE MAIN
local oMain := SetAppWindow()

   // XbpCRT-Fenster erzeugen
   oXbpCrt := XbpCrt():New (oMain , , aPos, DEF_ROWS, DEF_COLS )
   oXbpCrt:FontWidth  := DEF_FONTWIDTH
   oXbpCrt:FontHeight := DEF_FONTHEIGHT
   oXbpCrt:FontName   := "Alaska Crt"   // Rasterfont
   oXbpCrt:title      := "Fenster Name"
   oXbpCrt:Create()
gruss by OHR
Jimmy
UliTs
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2828
Registriert: Fr, 10. Feb 2006 9:51
Wohnort: Aachen
Hat sich bedankt: 259 Mal
Danksagung erhalten: 12 Mal
Kontaktdaten:

Re: XBTOOLS bei Version 2.x

Beitrag von UliTs »

+1
Top Lösung.
-------
Mitglied XuG Cologne
Mitglied XuG Osnabrück
unicorn
Cut&Paste-Entwickler
Cut&Paste-Entwickler
Beiträge: 40
Registriert: Di, 25. Apr 2017 17:23
Wohnort: Umgebung Stuttgart

Re: XBTOOLS bei Version 2.x

Beitrag von unicorn »

Hey Leute, falls ihr mal wieder eure schlauen Köpfe zur Verfügung stellen wollt:

https://xbaseforum.de/viewtopic.php?f=32&t=9884

Ich komm einfach nicht weiter...
Gruß,
Jannik (das verträumte Einhorn, by Jan)
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15688
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: XBTOOLS bei Version 2.x

Beitrag von brandelh »

Verweise auf eigene neue Beiträge in anderen Themen sind nicht wirklich hilfreich ... der ursprüngliche wird ja auch als ungelesen angezeigt ;-)
Lieber im passenden dann nochmal was posten.
Gruß
Hubert
IngoM
UDF-Programmierer
UDF-Programmierer
Beiträge: 51
Registriert: Di, 09. Jul 2013 9:23

Re: XBTOOLS bei Version 2.x

Beitrag von IngoM »

Hallo Jannik,

ich hatte ein ähnliches Problem mit einem Clipper-Programm, das im maximierten Fenster läuft.
Auf dieser Seite http://www.uwe-sieber.de/dosfon.html gibt es ein Programm namens ConsoleBackFill, das den Hintergrund schwarz färbt. Außerdem gibt es auch noch ConsoleNoClose; damit kann man das "x" zum Schließen des DOS-Fensters deaktivieren.
Zusätzlich gibt es auch noch alternative Fonts für Programme im DOS-Fenster.
Viele Grüße
Ingo
Antworten