Seite 1 von 1

Allgemeine Probleme bei Programmanpassung

Verfasst: 24.07.2014 10:38
von Forsti
Hallo liebe Forumer
Nach längerer Zeit möchte ich mich aus aktuellem Anlaß wieder mal melden. Ich arbeite mit einem Partner ein über PB 4.30 erstelltes Projekt um. Wie das nun so ist, sollen neben erforderlichen Änderungen auch einige Erweiterungen vorgenommen werden. Vorbild sind dabei Programmpassagen, die einst mal in Visual Basic 6.0 erstellt worden sind. Es haben sich nun folgende Probleme herauskristaliisiert:

1. Wie kann man feststellen, ob sich das Programm im Debugmodus befindet? Um z.B. Anweisungen darauf zu beschränken,
d.h. im Exe-Modus dürfen in den Compileroptionen eingestellte Kommandos zum Testen nicht übernommen werden.

2. Wie kann man folgende VB6-Anweisung abbilden: Private Sub T_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

3. Welche Ereignisse löst ein Mauszeiger aus? Wo ist das beschrieben?

4. Wie kann man in einem Textfeld einen Wert vorblenden, ohne das Feld selbst zu belegen? Vorbild sind dabei Suchfelder
bei Browsern und Suchmaschinen

Ich hoffe, daß ihr damit irgendwie klar kommt

Es grüßt Forsti

Re: Allgemeine Probleme bei Programmanpassung

Verfasst: 24.07.2014 10:44
von RSBasic
Forsti hat geschrieben:1. Wie kann man feststellen, ob sich das Programm im Debugmodus befindet? Um z.B. Anweisungen darauf zu beschränken,
Du kannst Compiler-Direktiven benutzen, um es abzufragen. Siehe PB-Hilfe unter "Compiler Direktiven". Da gibt es die Konstante "#PB_Compiler_Debugger".
Forsti hat geschrieben:4. Wie kann man in einem Textfeld einen Wert vorblenden, ohne das Feld selbst zu belegen? Vorbild sind dabei Suchfelder
bei Browsern und Suchmaschinen
Meinst du Placeholder/"alternativer Text"? Also: http://www.rsbasic.de/aktualisierung/wi ... 3%BCgen.pb
Meinst du das?

Re: Allgemeine Probleme bei Programmanpassung

Verfasst: 24.07.2014 10:51
von NicTheQuick
Forsti hat geschrieben:2. Wie kann man folgende VB6-Anweisung abbilden: Private Sub T_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
Hier würde sich wahrscheinlich 'BindGadgetEvent()' anbieten.
3. Welche Ereignisse löst ein Mauszeiger aus? Wo ist das beschrieben?
Was meinst du genau? Zum Beispiel das Überfahren eines Buttons mit der Maus? Bei jedem Gadget kannst du in der Hilfe nachlesen welche Events generiert werden, wenn man die Maus bewegt, klickt, scrollt, usw. Wichtig ist in dem Zusammenhang unter anderem auch der Befehl 'EventType()'.

Re: Allgemeine Probleme bei Programmanpassung

Verfasst: 24.07.2014 10:58
von Kiffi
Forsti hat geschrieben:2. Wie kann man folgende VB6-Anweisung abbilden: Private Sub T_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
könnte man hiermit abfragen:

Code: Alles auswählen

OpenWindow(0, #PB_Ignore, #PB_Ignore, 200, 200, "")

Repeat
 WWE = WaitWindowEvent()
 Select WWE
  Case #PB_Event_RightClick      : Debug "PB_Event_RightClick"
  Case #PB_Event_LeftClick       : Debug "PB_Event_LeftClick"
  Case #PB_Event_LeftDoubleClick : Debug "PB_Event_LeftDoubleClick"
  Case #PB_Event_CloseWindow     : Break
 EndSelect
ForEver
Grüße ... Kiffi

Re: Allgemeine Probleme bei Programmanpassung

Verfasst: 24.07.2014 12:27
von Chimorin
Ich meine doch, dass man bei einem Stringfield oder Stringgadget einen Placeholder einfügen kann...

Dank ans Forum

Verfasst: 28.07.2014 09:24
von Forsti
Hallo liebe Forumer

Ich möchte mich bedanken für die Antworten zum Thema -Allgemeine Probleme bei Programmanpassung-. Vorallem die Bemerkungen zu den Stichwörtern -CompilerDirektiven- und -BindGadgetEvent()- haben mich veranlaßt, mich tiefer damit zu beschäftigen. Auch den Hinweis über -Placeholder/"alternativer Text"- fand ich sehr interessant.

Viele Grüße von Forsti

Edit by NicTheQuick: Danke-Thread zusammengeführt mit Original-Thread