Das OFFIZIELLE PROFAN SUPPORT FORUM
Einsteigerfragen
PROFAN-Programmierung
Helfer & Tools
Anregungen & Vorschläge
PROFAN-NEWS
Die Regeln!
1 - Einsteigerfragen

 Neues Thema  |  Zur Übersicht  |  Suchen  |  Einloggen   Neuerer Beitrag  |  Älteres Thema 
 2x Listbox ?
Autor: peter (---.pools.arcor-ip.net)
Datum:   04.01.22 20:09

Hallo guten Tag.

Ich habe in diesem Programm 2 Listboxen.
Eine Listbox kann ich nur mit dem Notepad++ öffnen.

If Clicked(lb1) geht nur .

Ich kann nur eine MoveListProc anlegen.
Möchte aber für die lb1 eine andere Entscheidung für das auslesen.

Danke.

--------------------------------
Declare Handle lb,lb1, liste,liste1, ME, btn1, btn2, btn3, btn4, btn5
Declare Long ende

Declare string a
declare string b
declare string datei
declare string datei1

declare int i

ende = 0
Set("RegEx", 1)

Window 1300,10-0290, 700
lb = Create("Listbox", %HWnd, 0, 10, 110, 200, 400)
liste = Create("List", 0)

lb1 = Create("Listbox", %HWnd, 0, 10, 10, 200, 80)
liste1 = Create("List", 0)

btn1 = Create("Button", %HWnd, "put fth", 10, 520, 80, 25)
btn2 = Create("Button", %HWnd, "rm fth", 10, 545, 80, 25)
btn3 = Create("Button", %HWnd, "next", 100, 520, 80, 25)
btn4 = Create("Button", %HWnd, "next rs232", 100, 545, 80, 25)
btn5 = Create("Button", %HWnd, "sprite", 100, 570, 80, 25)

ChDir "d:\vscode_zx\cspect\pebi-fth\"
ClearList
AddFiles "*.*"
Move("ListToHandle", liste)
ClearList
Set("MoveListMode", 1)
Move("HandleToList", liste)
Move("ListToHandle", lb)

ChDir "d:\vscode_zx\cspect\pebi-lib\"
ClearList
AddFiles "*.*"
Move("ListToHandle", liste1)
ClearList
Set("MoveListMode", 1)
Move("HandleToList", liste1)
Move("ListToHandle", lb1)


WhileNot ende
WaitInput

If Clicked(btn1)
Assign #2,"d:\\vscode_zx\\cspect\\pebi-fth\\make-nex1.bat"
Rewrite #2
print #2,"hdfmonkey.exe mkdir d:\vscode_zx\cspect\systemnext.img fth"
datei1=" "
i=0
a="hdfmonkey.exe put d:\vscode_zx\cspect\systemnext.img "
b=" /fth/"

whilenot datei1=""
datei1 = GetString$(lb,i)
Print #2,a+datei1+b+datei1
i=i+1
endwhile

Close #2
ChDir "d:\\vscode_zx\\cspect\\pebi-fth\\"
shell "make-nex1.bat"
endif

If Clicked(btn2)
Assign #2,"d:\\vscode_zx\\cspect\\pebi-fth\\make-nex1.bat"
Rewrite #2
print #2,"hdfmonkey.exe mkdir d:\vscode_zx\cspect\systemnext.img fth"
datei1=" "
i=0
a="hdfmonkey.exe rm d:\vscode_zx\cspect\systemnext.img "
b=" /fth/"

whilenot datei1=""
datei1 = GetString$(lb,i)
Print #2,a+b+datei1
i=i+1
endwhile

Close #2
ChDir "d:\\vscode_zx\\cspect\\pebi-fth\\"
shell "make-nex1.bat"
endif

If Clicked(btn3)
datei="CSpect.exe -w2 -zxnext -nextrom -exit -brk -tv -mmc=d:\\vscode_zx\\cspect\\systemnext.img"
WinExec ("d:\\vscode_zx\\cspect\\"+datei,1)
endif

If Clicked(btn4)
datei="CSpect.exe -w2 -zxnext -nextrom -exit -brk -tv" + " -com=COM1:115200 -mmc=d:\\vscode_zx\\cspect\\systemnext.img"
WinExec ("d:\\vscode_zx\\cspect\\"+datei,1)
endif

If Clicked(btn5)
ChDir "d:\\vscode_zx\\cspect\\"
shell "UDGeedNext.exe"
ChDir "d:\vscode_zx\cspect\pebi-fth\"
endif

If Clicked(lb)
datei = GetString$(lb, GetCurSel(lb))
WinExec ("d:\\notepad++\\notepad++.exe " + datei,1)
EndIf

If Clicked(lb1)
datei = GetString$(lb1, GetCurSel(lb1))
WinExec ("d:\\notepad++\\notepad++.exe " + datei,1)
EndIf
EndWhile

Set("MoveListMode", 0)
Set("RegEx", 0)

End

MoveListProc
Parameters string s, int i
If Get("MoveListMode") = 1
If InStr("((?i)Exe|(?i)Log|(?i)Bat|~[|~])", s) = 0
AddString(0, s)
EndIf
EndIf
EndProc

---------------------------------------



Nachricht bearbeitet (04.01.22 20:13)

Beitrag beantworten
 
 Re: 2x Listbox ?
Autor: Heinz Brill (---.dip0.t-ipconnect.de)
Datum:   05.01.22 07:29

Du brauchst ja auch nur EINE MOVELISTPROC.
Wenn dur bei der 2.ten Listbox (lb1) etwas anderes
tun willst (anderes Dateiauswahl-Kriterium oder auch
ganz was anderes), setzt du den MoveListMode auf
2. Das machst du in der Abfrage If Clicked(lb1)...EndIf.
Das brauchst du aber in deinem Falle gar nicht, indem
du muster$ global haltest. Die zweite Listbox wird ja
erst danach mit Move("ListToHandle",..) gefüllt.

So in etwa :

 If Clicked(lb)
     muster$ = "((?i)Exe|(?i)Log|(?i)Bat|~[|~])"
    Set("MoveListMode", 1)
    ClearList Liste1
    Move("HandleToList", liste1)
    Move("ListToHandle", lb)
 ElseIf Clicked(lb1)
    muster$ = "dein neues Auswahlkriterium"
    Set("MoveListMode", 1)
    ClearList Liste1
    Move("HandleToList", liste1)
    Move("ListToHandle", lb1)
 EndIf 
 
 MoveListProc
 Parameters string s, int i
 ClearList
 If Get("MoveListMode") = 1
    If InStr(muster$, s) = 0
      AddString(0, s)
    EndIf
 EndIf
 EndProc
 


Oder du setzt das Auswahlkriterium im MoveListmode 2
bei Instr() als Stringliteral neu. Das kannst du jetzt machen, wie du
willst. Beides führt zum gleichen Ergebnis.

Du siehst, da kann man sehr variabel sein.

H.Brill
XProfan X4 + FreeProfan

Nachricht bearbeitet (05.01.22 08:07)

Beitrag beantworten
 
 Re: 2x Listbox ?
Autor: peter (---.pools.arcor-ip.net)
Datum:   05.01.22 09:26

Danke für die Info.
Es funktioniert aber nicht.

...........Variable muster$ declariert werden...

Ich brauche auch 2x dieses Notepad++

Gruss


------------------------
If Clicked(lb)
muster$ = "((?i)Exe|(?i)Log|(?i)Bat|~[|~])"
Set("MoveListMode", 1)
ClearList Liste1
Move("HandleToList",liste1)
Move("ListToHandle", lb)
datei = GetString$(lb, GetCurSel(lb))
WinExec ("d:\\notepad++\\notepad++.exe " + datei,1)
elseif
muster$ = "((?i)Exe|(?i)Log|(?i)Bat|~[|~])"
set("MoveListMode", 1)
ClearList Liste1
Move("HandleToList", liste1)
Move("ListToHandle", lb1)
datei = GetString$(lb, GetCurSel(lb1))
WinExec ("d:\\notepad++\\notepad++.exe " + datei,1)
EndIf
EndWhile

Set("MoveListMode", 0)
Set("RegEx", 0)

End

MoveListProc
Parameters string s, int i
ClearList
If Get("MoveListMode") = 1
If InStr(muster$, s) = 0
AddString(0, s)
EndIf
EndIf
---------------------------------



Nachricht bearbeitet (05.01.22 10:20)

Beitrag beantworten
 
 Re: 2x Listbox ?
Autor: Heinz Brill (---.dip0.t-ipconnect.de)
Datum:   05.01.22 11:09

Du fragst ja auch nur die erste Listbox (lb) ab.
Der Rest unter dem elseif wird ja erst gar nicht
ausgeführt.
Richtig müßte es
ElseIf Clicked(lb1)

heißen.

Probier mal das aus.

H.Brill
XProfan X4 + FreeProfan

Beitrag beantworten
 
 Re: 2x Listbox ?
Autor: peter (---.002.200.pools.vodafone-ip.de)
Datum:   05.01.22 12:43

Danke.
jetzt funktioniert es.

Das musste auch jeweils rein :
ChDir "d:\vscode_zx\cspect\pebi-fth\"
und
ChDir "d:\vscode_zx\cspect\pebi-lib\"

Gruss

Beitrag beantworten
 Foren-Liste  |  Baumstruktur   Neuerer Beitrag  |  Älteres Thema 


 Foren-Liste  |  Zur Registrierung 
 Benutzerlogin
 Benutzername:
 Passwort:
 Login-Daten speichern:
   
 Passwort vergessen?
E-Mail-Adresse oder Username unten eingeben. Dann wird Dir per e-Mail ein neues Passwort zugeschickt.

phorum.org