SDK-Helfer/ Tools | | | | - Seite 1 - |
| RudiB. | Herunterladen Fehler finden...Variablen automatisch im Programm umbenennen...nach Typen und Arten Filtern....in welcher Zeile und welcher Proc deklariert......welche Systemvars werden genutzt ......und ich hab da noch einige Ideen, die ich noch einbauen möchte.
Ich bastle gerade an einem Tool um eine bessere Übersicht der Variablen in einem Programm zu bekommen....
Ist soweit wie oben beschrieben lauffähig.....bin noch in der Testphase um Fehler zu ermitteln (die bestimmt noch auftauchen werden....bin selbst ein Chaosprogrammierer und habs eigentlich nur für ein Projekt von mir geschrieben)
Update zu VAR-FINDER
So...... ich denke die erste Testversion ist fertig und ich stelle sie hier als EXE zum testen ein. Hab das ganze ein wenig angepasst, auf Optischen Schnick-Schnack verzichtet und ich denke das Tool wird laufen....tuts zumindest bei mir. Falls Ihr es testet Bitte ich Euch um Feedback, sei es Kritik,Schelte, auftretende Fehler oder auch Verbesserungs-Vorschläge. Kleine Erklärung zum Programm unter Hilfe.... Ansonsten ist es fast selbsterklärend.
Fast vergessen...erkennt auch Inaktive Variablen, die zwar Deklariert wurden aber im Programm nicht verwendet werden....und doppelt Deklarierte Variablen erkennt er auch......
Gruß Rudi
So....nun noch mal ein Update meines kleinen Tools. Hab mir mit Dank die Konstruktive Kritik und Anregungen von Roland und E.T. zu Herzen genommen und versucht es ein wenig besser zu machen. Ich denke werden noch Fehler drin stecken....jedoch hoffe ich auf Feedback von Euch
Gruß aus München |
| | | Xprofan X4 Rudolf Beske / München
Hardware: NB Intel I9 - 16GByte RAM | 14.10.2012 ▲ |
| |
| | | | - Seite 4 - |
| | RudiB. | so jetzt steht eine Lauffähige Version.
Nun ist auch speichern als .PRF oder .XPRF möglich. Auch eine erste Hilfe-Datei Varfinder.chm ist nun vorhanden, an der ich aber noch weiterarbeite. Zum speichern : Die Hauptdatei kann unter anderem Namen abgepeichert werden, die Include und Unit-Dateien werden am Orginal-Ort mit dem gleichen Namen gesichert.
Kommende Updates ect. können jetzt immer im obigen 1.Beitrag geladen werden. wie immer gepackt als Exe mit dem Weitergabe-Assistenten von Andreas Miethe.
Falls Ihr irgendwelche Fehler entdeckt, dann Bitte melden....
Gruß und ein restliches Frohes Osterfest... |
| | | | |
| | | Also es gelingt hin und wieder durch testweises Klicken verschiedener Buttons das Programm stehenbleiben zu lassen sodass es eben nicht mehr reagiert aber auch nicht abstürzt. Was genau ich da ständig klicke kann ich so einfach garnicht beschreiben.
Offensichtlichere Fehlerchen habe ich abgelichtet:
Hier wird nicht beachtet wenn die Parameterdeklaration hinter dem Proc- Bezeichnernamen mit ( eingeleitet wird.
Dabei wird die Funktion nicht als solche erkannt.
Insgesammt ist das Programm aber sicherlich eine gute Programmierübung gewesen und vielleicht solltest Du Dich auf neuere Projekte stürzen. |
| | | | |
| | RudiB. | Hallo David,
hast im Grunde genommen Recht....muss mein Programmierwissen noch erheblich verbessern. Du scheinst das Programm mit XPSE-Code gefüttert zu haben....hab zwar geschrieben das das Programm erkennt das es sich um XPSE-Code handelt, jedoch nicht das es damit umgehen kann.Es ist also rein auf Profan-Code getrimmt.... Hab bisher versucht weitestgehend da hin zu kommen, das er mit X2-Syntax klar kommt....da ich es bisher selber noch nicht habe (kommt aber demnächst), fehlten mir die Möglichkeiten es an lauffähigen Programmen zu testen. Werd das Projekt zwar nicht ganz fallen lassen (werd sogar noch versuchen ihm XPSE beizubringen), aber ich denke hier im Forum wird es zunächst mal ruhen.
Trotzdem Danke fürs Feedback....
Gruß aus München Rudi |
| | | | |
| | RudiB. | Hallo,
hab mal einen Testdurchlauf mit dem PRF Mini-Memory gestartet. Mittlerweile hab ich mein Tool ein weing erweitert...darunter 1. Zeilen-Format (Einrücktiefe Optional von 1-5) 2. Funktionsbefehle die im Code nicht zwingend mit vorangestelltem @ stehen müssen, werden jedoch so im konvertierten Code so wiedergegeben. (das Auge isst ja mit...) 3. Procnamen z.B. Proc Test können nach Wahl /komplett Groß/ komplett klein oder nur Anfangsbuchstabe Groß konvertiert werden. 4. Mehrere Befehlszeilen die mit Doppelpunkt in einer Zeile stehen, (wie in dem Super-Mini-Memory) werden in einzelene Befehlszeihlen konvertiert.
Hier das Orginal : KompilierenMarkierenSeparierenWindowStyle 512+16:Window 200,100 - 390,241:Declare ib&[35,3],im%,s%,i%,t%,b%,r%,z%,sf%,ai%,at%,ar%,wz%,qp$,fm%,fr!,kt%,wt$,ti%
wt$=" JörgG's 4k-SystemMemory -- Klick dich fit... ":WindowTitle wt$:Def GetSysColor(1) !"USER32","GetSysColor":sf% = GetSysColor(15)
Proc tb
s%=5:z%=5:t%=1:ib&[0,1]=Create("hIcon",Par$(0),0)
WhileLoop 1,at%:ib&[&loop]=Create("IconButton",%hwnd,ib&[0,1],s%,z%,50,50):ib&[&loop,2]=s%+7:ib&[&loop,3]=z%+7:Inc t%:If t%>ar%:t%=1:s%=5:Inc z%,52:Else:Inc s%,52:EndIf:EndWhile
ib&[27]=Create("Button",%hwnd,"Neu",325,170,55,40):ib&[34]=Create("text",%hwnd,"",337,145,43,25)
EndProc
Proc level
var f$="$400080":Cls sf%:MAT ib&[]=1
ib&[26]=Create("Button",%hwnd,"Ende",325,5,55,20):ib&[28]=Create("RadioButton",%hwnd,"16x",325,146,55,20):ib&[29]=Create("RadioButton",%hwnd,"20x",325,166,55,20)
ib&[30]=Create("RadioButton",%hwnd,"24x",325,186,55,20):ib&[31]=Create("text",%hwnd,"Anzeigedauer bei ungleichen Pärchen:",50,43,265,25)
ib&[32]=Create("choicebox",%hwnd,1,310,35,70,90):@AddString(ib&[32],"0.5 sek"):AddString(ib&[32],"1.0 sek"):AddString(ib&[32],"1.5 sek"):SelectString(ib&[32],-1,"1.0 sek")
ib&[34]=Create("text",%hwnd,"Zeitlimit in Sekunden pro Runde setzen:",38,105,265,25)
ib&[35]=Create("choicebox",%hwnd,0,310,105,70,110):AddString(ib&[35],"kein's"):WhileLoop 15,180,15:AddString(ib&[35],Str$(&loop)):EndWhile:SelectString(ib&[35],-1,"kein's")
TextColor $00FF,-1:DrawText 50,145,"Mit welchem Level":DrawText 50,170,"möchtest du spielen?":SetTimer 10
While 1
WaitInput
case (Clicked(ib&[28])) Or (Clicked(ib&[29])) Or (Clicked(ib&[30])):BREAK
If Clicked(ib&[26]):KillTimer:End:EndIf
Inc ai%,30:usepen 0,3,f$:Line ai%,80-ai%,83:If ai%>330:ai%=0:If f$="$400080":f$="$FF":Else:f$="$400080":EndIf:EndIf
EndWhile
If GetCheck(ib&[28])=1:ai%=8:at%=16:ar%=4:ElseIf GetCheck(ib&[29])=1:ai%=10:at%=20:ar%=5:Else:ai%=12:at%=24:ar%=6:EndIf
wz%=GetCurSel(ib&[32]):If wz%=0:wz%=500:elseif wz%=1:wz%=1000:Else:wz%=1500:EndIf
fm%=GetCurSel(ib&[35]):If fm%=0:fm%=301:Else:fm%=fm%*15:WindowTitle wt$+"-- Zeitlimit: "+Str$(fm%)+" Sek":EndIf:fr!=fm%
KillTimer:DestroyWindow(ib&[31]):DestroyWindow(ib&[32]):DestroyWindow(ib&[33]):DestroyWindow(ib&[34]):DestroyWindow(ib&[35])
ShowWindow(ib&[28],0):ShowWindow(ib&[29],0):ShowWindow(ib&[30],0)
EndProc
Proc neu
Declare h%[im%]:WhileLoop 1,at%:ShowWindow(ib&[&loop],1):DeleteObject ib&[&loop,1]:ib&[&loop,1]=1:EndWhile:cls sf%:s%=0:Randomize
While s%<ai%:t%=Rnd(im%)+1:if h%[t%]=0:h%[t%]=Create("hIcon",qp$,t%):Inc s%:z%=0:While z%<2:i%=Rnd(at%)+1:If ib&[i%,1]=1:ib&[i%,1]=h%[t%]:Inc z%:EndIf:EndWhile:EndIf:EndWhile:s%=0:t%=0:r%=0:anz:Play 75;80,16,1:If fm%<301:SetTimer 500:kt%=1:EndIf:fr!=fm%
EndProc
Proc ausgabe
Parameters ix%:ShowWindow(ib&[ix%],0):DrawIcon ib&[ix%,1],ib&[ix%,2],ib&[ix%,3]:If s%=0:i%=ix%:inc s%:Else:If ib&[ix%,1]<>ib&[i%,1]:sleep wz%:ShowWindow(ib&[ix%],1):ShowWindow(ib&[i%],1)
If fr!<301:fr!=fr!-wz%/1000:ti%=%wmtimer:SetTimer 500:EndIf:Else:Inc r%:EndIf:s%=0:EndIf
If r%=ai%:Play 19;19;19,-1,0:Play 25;27;29,0,0:If fm%<301:KillTimer:kt%=0:TextColor $400080,-1:DrawText 330,110,Str$(fm%-fr!)+ "s":EndIf:sleep 1000:Play -25;-27;-29,0,0:If (b% > t%) Or (b% = 0):MUSIC "C#2 F-8 G4.":b%=t%:anz:EndIf:EndIf
EndProc
Proc anz
rectangle 325,32-380,97:TextColor $00FF,-1:DrawText 335,33,Str$(b%):TextColor $8000,-1:DrawText 335,68,Str$(t%)
EndProc
qp$=$syspath+"\\shell32.dll":im%=@IconCount(qp$)-1:UseFont "courier new",30,12,1,0,0:set("NumWidth",3):set("Decimals",0):level:usepen 0,0,$FF0000:tb:neu:b%=0
While 1
WaitInput
If %wmtimer:fr!=fr!-.5:SetText ib&[34],Str$(fr!):If fr!<.5:Play 29;35,2,1:MessageBox("Die Zeit für die neue Runde läuft, sobald du OK drückst...","Schade - die "+Str$(fm%)+" Sek sind leider abgelaufen...",262640):SetFocus((ib&[27])):neu:EndIf
ElseIf Clicked(ib&[26]):WhileLoop 0,at%:DeleteObject ib&[&loop,1]:EndWhile:Case kt%=1:KillTimer:end:ElseIf Clicked(ib&[27]):neu:Endif
WhileLoop 1,at%:If %getfocus=ib&[&loop]:Inc t%:anz:ausgabe &loop:BREAK:EndIf:EndWhile:EndWhile
und das nach dem Durchlauf mit meinem Tool : KompilierenMarkierenSeparierenWindowStyle 512+16
Window 200,100 - 390,241
Declare ib&[35,3],im%,s%,i%,t%,b%,r%,z%,sf%,ai%,at%,ar%,wz%,qp$,fm%,fr!,kt%,wt$,ti%
wt$=" JörgG's 4k-SystemMemory -- Klick dich fit... "
WindowTitle wt$
Def GetSysColor(1) !"USER32","GetSysColor"
sf% = GetSysColor(15)
Proc TB
s%=5
z%=5
t%=1
ib&[0,1]=@Create("hIcon",@Par$(0),0)
WhileLoop 1,at%
ib&[&loop]=@Create("IconButton",%hwnd,ib&[0,1],s%,z%,50,50)
ib&[&loop,2]=s%+7
ib&[&loop,3]=z%+7
Inc t%
If t%>ar%
t%=1
s%=5
Inc z%,52
Else
Inc s%,52
EndIf
EndWhile
ib&[27]=@Create("Button",%hwnd,"Neu",325,170,55,40)
ib&[34]=@Create("text",%hwnd,"",337,145,43,25)
EndProc
Proc LEVEL
var f$="$400080"
Cls sf%
MAT ib&[]=1
ib&[26]=@Create("Button",%hwnd,"Ende",325,5,55,20)
ib&[28]=@Create("RadioButton",%hwnd,"16x",325,146,55,20)
ib&[29]=@Create("RadioButton",%hwnd,"20x",325,166,55,20)
ib&[30]=@Create("RadioButton",%hwnd,"24x",325,186,55,20)
ib&[31]=@Create("text",%hwnd,"Anzeigedauer bei ungleichen Pärchen:",50,43,265,25)
ib&[&loop,3]=z%+7
Inc t%
ib&[32]=@Create("choicebox",%hwnd,1,310,35,70,90)
@AddString(ib&[32],"0.5 sek")
@AddString(ib&[32],"1.0 sek")
@AddString(ib&[32],"1.5 sek")
@SelectString(ib&[32],-1,"1.0 sek")
ib&[34]=@Create("text",%hwnd,"Zeitlimit in Sekunden pro Runde setzen:",38,105,265,25)
@AddString(ib&[32],"1.0 sek")
@AddString(ib&[32],"1.5 sek")
ib&[35]=@Create("choicebox",%hwnd,0,310,105,70,110)
@AddString(ib&[35],"kein's")
WhileLoop 15,180,15
@AddString(ib&[35],@Str$(&loop))
EndWhile
@SelectString(ib&[35],-1,"kein's")
TextColor $00FF,-1
DrawText 50,145,"Mit welchem Level"
DrawText 50,170,"möchtest du spielen?"
SetTimer 10
While 1
WaitInput
case (@Clicked(ib&[28])) Or (@Clicked(ib&[29])) Or (@Clicked(ib&[30]))
BREAK
If @Clicked(ib&[26])
KillTimer
End
EndIf
Inc ai%,30
usepen 0,3,f$
Line ai%,80-ai%,83
If ai%>330
ai%=0
If f$="$400080"
f$="$FF"
Else
f$="$400080"
EndIf
EndIf
EndWhile
If @GetCheck(ib&[28])=1
ai%=8
at%=16
ar%=4
ElseIf @GetCheck(ib&[29])=1
ai%=10
at%=20
ar%=5
Else
ai%=12
at%=24
ar%=6
EndIf
wz%=@GetCurSel(ib&[32])
If wz%=0
wz%=500
elseif wz%=1
wz%=1000
Else
wz%=1500
EndIf
fm%=@GetCurSel(ib&[35])
If fm%=0
fm%=301
Else
fm%=fm%*15
WindowTitle wt$+"-- Zeitlimit: "+@Str$(fm%)+" Sek"
EndIf
fr!=fm%
ai%=12
at%=24
KillTimer
@DestroyWindow(ib&[31])
@DestroyWindow(ib&[32])
@DestroyWindow(ib&[33])
@DestroyWindow(ib&[34])
@DestroyWindow(ib&[35])
@ShowWindow(ib&[28],0)
@ShowWindow(ib&[29],0)
@ShowWindow(ib&[30],0)
EndProc
Proc NEU
Declare h%[im%]
WhileLoop 1,at%
@ShowWindow(ib&[&loop],1)
DeleteObject ib&[&loop,1]
ib&[&loop,1]=1
EndWhile
cls sf%
s%=0
Randomize
While s%<ai%
t%=@Rnd(im%)+1
if h%[t%]=0
h%[t%]=@Create("hIcon",qp$,t%)
Inc s%
z%=0
While z%<2
i%=@Rnd(at%)+1
If ib&[i%,1]=1
ib&[i%,1]=h%[t%]
Inc z%
EndIf
EndWhile
EndIf
EndWhile
s%=0
t%=0
r%=0
ANZ
Play 75;80,16,1
If fm%<301
SetTimer 500
kt%=1
EndIf
fr!=fm%
EndProc
Proc AUSGABE
Parameters ix%
@ShowWindow(ib&[ix%],0)
DrawIcon ib&[ix%,1],ib&[ix%,2],ib&[ix%,3]
If s%=0
i%=ix%
inc s%
Else
If ib&[ix%,1]<>ib&[i%,1]
sleep wz%
@ShowWindow(ib&[ix%],1)
@ShowWindow(ib&[i%],1)
If fr!<301
fr!=fr!-wz%/1000
ti%=%wmtimer
SetTimer 500
EndIf
Else
Inc r%
EndIf
s%=0
EndIf
If r%=ai%
Play 19;19;19,-1,0
Play 25;27;29,0,0
If fm%<301
KillTimer
kt%=0
TextColor $400080,-1
DrawText 330,110,@Str$(fm%-fr!)+ "s"
EndIf
sleep 1000
Play -25;-27;-29,0,0
If (b% > t%) Or (b% = 0)
MUSIC "C#2 F-8 G4."
b%=t%
ANZ
EndIf
EndIf
EndProc
Proc ANZ
rectangle 325,32-380,97
TextColor $00FF,-1
DrawText 335,33,@Str$(b%)
TextColor $8000,-1
DrawText 335,68,@Str$(t%)
EndProc
qp$=$syspath+"\\shell32.dll"
im%=@IconCount(qp$)-1
UseFont "courier new",30,12,1,0,0
@Set("NumWidth",3)
@Set("Decimals",0)
LEVEL
usepen 0,0,$FF0000
TB
NEU
b%=0
While 1
WaitInput
If %wmtimer
fr!=fr!-.5
SetText ib&[34],@Str$(fr!)
If fr!<.5
Play 29;35,2,1
@MessageBox("Die Zeit für die neue Runde läuft, sobald du OK drückst...","Schade - die "+@Str$(fm%)+" Sek sind leider abgelaufen...",262640)
@SetFocus((ib&[27]))
NEU
EndIf
ElseIf @Clicked(ib&[26])
WhileLoop 0,at%
DeleteObject ib&[&loop,1]
EndWhile
Case kt%=1
KillTimer
end
ElseIf @Clicked(ib&[27])
NEU
Endif
WhileLoop 1,at%
If %getfocus=ib&[&loop]
Inc t%
ANZ
AUSGABE &loop
BREAK
EndIf
EndWhile
EndWhile
|
| | | | |
| | | Tip: Wenn Du Quelltext posten möchtest der nicht von der Community formatiert werden soll dann hilft der Quelltext-Merker der Quelltext 1:1 in eine URL umwandelt: [...] |
| | | | |
| | RudiB. | iF (11.04.13)
Tip: Wenn Du Quelltext posten möchtest der nicht von der Community formatiert werden soll dann hilft der Quelltext-Merker der Quelltext 1:1 in eine URL umwandelt: [...]
Hallo David,
was bedeutet " Quelltext, der nicht von der Community formatiert werden soll ".... Hab ich da gegen irgendwelche Regeln verstoßen ? Falls ja, " Mea Culpa "....
Aber ich stelle das Projekt hiermit so oder so ein..... Bin noch nicht Programmiertechnisch soweit das Programm Fehlerfrei hinzukriegen.
Versuche mal was neues...... |
| | | | |
| | | Nein überhaupt nicht gegen sowas wie "Regeln" verstoßen.
Wollte Dir nur dabei helfen, besser darstellen zu können, was das Programm eigentlich tut, da das Communityprogramm hier die Quelltexte die in Code- Tags stehen ja automatisch formatiert und dabei "Deine" Formatierung ja "verloren" geht. Darum der Tip das Du Codes auch per Quelltext-Merker: [...] posten kannst, der die Codes völlig unverändert lässt und hinter einer einfachen Adresse speichert die auch immer abrufbar ist und die man auch immer leicht verwenden kann um auf Codes zu zeigen. |
| | | | |
| | RudiB. | Oh ...dann ist ja gut...Danke
...aber gut zu wissen...falls ich mal auf die Formatierung ansich achten möchte. |
| | | | |
| | RudiB. | Hallo zusammen,
hab mal mein altes Projekt wieder aufgegriffen: VarFinder Diesmal komplett überarbeitet und in neuem Gewand. Ist noch Fehlerbehaftet und auch noch nicht fertig...wollte es aber mal posten damit man es mal testen kann. Würde gerne Euer Feedback hierzu lesen. Das Programm liest eine Profan-Datei ein nimmt aber an der Orginal-Datei keinerlei Änderungen vor, es wird hierzu eine Temp.prf angelegt, im gleichen Verzeichnis wie die Orginal-Datei. Um die Temp-Datei aus dem laufenden Programm heraus zu testen, muss die Datei Profan.Exe im Verzeichnis liegen.
Was macht das Programm beim Start im einzelnen ? 1. Es werden alle Zeilen mit dem Backslash für "Befehle über mehrere Zeilen" in eine Befehlszeile umgewandelt. 2. Es werden alle Kommentare entfernt. Hochkomma "'", // und auch Blockkommentare. 3. Befehlszeilentrennung mit Doppelpunkt in einer Zeile werden aufgelöst in einzelne Befehlszeilen. 4. Alle Leerzeilen im Listing werden entfernt. 5. Das Listing wird formatiert. 6. Variablen im Listing werden identifiziert. 7. Proceduren im Listing werden gelistet. 8. Schleifen im Listing werden gelistet. 9. Definitionen im Listing werden gelistet. 10. Header-Dateien im Listing werden gelistet. 11. Controls im Listing werden gelistet. (nicht alle, eigentlich nur aktive wie BUTTON,LISTBOX...etc.) 12. Dialoge wie z.B: Messagebox etc. werden gelistet. 13. Informationen zur Datei werden in einem Info-Fenster bereitgestellt.
Das fertige konvertierte Listing wird dann im RTF-Editor-Fenster angezeigt.
Nach dem Start des Programm kann eine Datei über (rechte Maustaste) das Mausmenu geladen werden. Abschliessend kann noch eine Tiefen-Analyse durchgeführt werden. Hier werden dann alle Variablen im Listing identifiziert mit den entsprechenden Zeilennummern in denen die Variable vorkommt. Will gar nicht mehr viel schreiben dazu. Einfach mal testen, Tooltips aktivieren und los....
Herunterladen |
| | | | |
| | RudiB. | Na ja...so wirkliches Feedback kam ja jetzt noch nicht, aber egal. Ich stell mal das Listing als PRF-Datei ein. Vielleicht hat ja jemand Lust nach Fehlern zu suchen, etwas zu verbessern oder ähnliches.....ich stoss nämlich gerade an meine Grenzen, was die Performance und bedienbarkeit anbelangt. Wie gesagt Quelltext freigegeben.... Würde mich freuen über Euer Feedback, ob nun Negativ oder Positiv... Oder es wird als gemeinsames Projekt aufgegriffen...wär doch mal was, wenn die Community an einer Sache arbeitet. |
| | | Xprofan X4 Rudolf Beske / München
Hardware: NB Intel I9 - 16GByte RAM | 05.10.2021 ▲ |
| |
| | E.T. | Ich geb dann mal meinen Senf nach dem Testen dazu: - Programmfenster ist links oben (0,0) "festgenagelt" und lässt sich nicht verschieben. Wäre mir zentrierter Start und verschiebbar lieber (FensterStyle ??) - Kein System-Menü, Fenster lässt sich nicht mal schnell minimieren - Kein Programm - Titel ... was war das gleich noch für ein Programm ??? - Der Focus hängt immer im RTF-Fenster. Nach Auswahl in den Boxen (rechts oben und unten) scrollt so immer wieder das RTF-Fenster, nicht die Box. - "bearbeitete Datei testen" funktioniert nicht. Liegt wohl daran, das dein Progg nicht weis, wo der Interpreter ist. - "Die konvertierte Datei wird als temp.prf gespeichert" >> WO ??
Hab aber auch was positives, nicht nur "zu meckern" : Eine sehr schöne, aufgeräumte Oberfläche.
Auf jeden Fall ausbaufähig
Über den Quelltext hab ich jetzt noch nicht geschaut, mach ich aber , wenns die Zeit erlaubt |
| | | Grüße aus Sachsen... Mario WinXP, Win7 (64 Bit),Win8(.1),Win10, Win 11, Profan 6 - X4, XPSE, und 'nen schwarzes, blinkendes Dingens, wo ich das alles reinschütte... | 06.10.2021 ▲ |
| |
| | RudiB. | So, hab das ganze noch mal bearbeitet und ein Update der Datei eingestellt....Fenster nicht mehr festgenagelt und auch minimierbar...mit Titelzeile. Hab auch noch eine Statuszeile angefügt und ein paar Elemente dort plaziert. z.B.: Anzeige der geladenen Datei, Anzahl Variablen und Anzahl Programmzeilen. Tooltips nachgebessert z.B: RTF-ToolTip (wo liegt die Temp-Datei)..und der Pfad der Profan.Exe wird nun auch ermittelt. Sollte jetzt gehen....sollte. Und das der Focus immer wieder im RTF-Fenster liegt ist schon richtig. Klickt man auf ein Element z.B.: oben rechts Procs, dann soll er ja auf die entsprechende Zeile im RTF-Fenster springen/scrollen....siehe ToolTips. Ansonsten kann man alle Gridboxes unabhängig voneinander scrollen, ich seh da keinen Fehler. |
| | | | |
|
AntwortenThemenoptionen | 42.389 Betrachtungen |
ThemeninformationenDieses Thema hat 8 Teilnehmer: |