Deutsch
Forum

Erledigt: "GetText" im nproc

 
- Seite 1 -



E.T.
In XProfan:
...
Vergl_Str2$ = @GetText$(Liste2&, &loop, 0)
...

Anm. Liste2& ist eine Gridbox (2 Spalten)

Als nproc-Funktion finde ich nur GetString(lList,lPos)  bzw. GetText(lH) , was natürlich so nicht funzt .
 
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...
14.03.2010  
 



 
- Seite 1 -



E.T.
...wenn ich alle Zeilen mit der neuen Funktion, wie:
Verg_Dat_2$ = GetText.Listview(Liste2&, &loop, 1)

auskommentiere, wird "nur noch " Clear angemeckert:


XProfan 11.2.1.8a.62 Praekompiler [XPSE]
Copyright (C) 1998-2010 XProfan.Com, built DE.

Datei: e:profan 11-proggsduplfinderduplpicfinder.prf (117)
Objektcode: DuplPicFinder.asm(244) : Error A2235: Syntax error
: CLEAR
DuplPicFinder.asm(320) : Error A2235: Syntax error: CLEAR

Warnung: Fehler im Assembler.
Mapfile: angewiesen

[C]ompile [Interpr [L]ink [R]unPrc Run[E]xe [S]ource [H]ilfe

Run-Prf: Error, interpretieren mit Warnungen nicht empfohlen.
XPSE:>


Gibt denn GetText.Listview(lListview,lColumn,lRow)  keinen String zurück ???
 
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...
15.03.2010  
 



Gibt doch noch kein Clear  [...]  .

Schreib derweil vlt. einfach rtlZeroMemory(handle,anzBytes). ^^

Frisch nach Dim ist übrigens immer gecleart.
 
15.03.2010  
 




E.T.
iF, Beitrag=56430, Zeitpunkt=15.03.2010
Gibt doch noch kein Clear  [...]  .


Nicht so schlimm, habs auskommentiert.
Mit
...str(GetText.Listview(Liste1&, &loop, 0))

kommt wieder:


...
DuplPicFinder.asm(730) : Error A2235: Syntax error: GETTEXT
DuplPicFinder.asm(14083) : Error A2061: Symbol already defined
: __xeTS_331r

Warnung: Fehler im Assembler.
Mapfile: angewiesen
...
 
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...
15.03.2010  
 



 
- Seite 2 -


Str( erwartet Long als Parameter, GetText.Listview( gibt aber einen String zurück.
 
15.03.2010  
 




E.T.
Hm, XPSE empfielt mir aber folgendes:


...
Warnung: Zuweisung zwischen String und Long.
Funktion: VERGLEICHEN
Abhilfe: STR
...
, wenn ich GetText.Listview(..  einer String-Variable (Verg_Dat_2$) zuweise

GetText.Listview( gibt aber einen String zurück. >>> SICHER ???

Naja, wird schon noch...

[offtopic]...muss erst mal los, in die finstere Nacht [/offtopic]
 
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...
15.03.2010  
 



Ja, ganz sicher. Du kannst ganz normal:
cls
long grid=create("gridbox",hwnd,"Links;0;180;Mitte;2;100;Rechts;1;80",0,0,50,300,300)
addstring(grid,"HalloHalloHalloHallo|Welt|Test")
print gettext$(grid,0,0);"-"
print test(grid);"-"
waitinput
end

nproc test

    parameters grid&
    return getText.Listview(grid&,0,0)

endproc

- die Warnung wird etwas anderes betreffen, Du wirst irgendwo ein Long einem String zuweisen.
 
15.03.2010  
 




E.T.
iF, Beitrag=56434, Zeitpunkt=15.03.2010
...
- die Warnung wird etwas anderes betreffen, Du wirst irgendwo ein Long einem String zuweisen.


Schon klar, aber wo ???
nProc Vergleichen

    Declare Verg_Dat_1$, Verg_Dat_2$, Vergl_Str1$, Vergl_Str2$, Vergl_Pass&, Pos_L1&
    Alles andere ist global declariert
    Alles mit **** hatte ich schon auskommentiert
    Zaehler1& = GetCount(Liste1&)-1****

    WhileLoop 0,GetCount(Liste1&)-1

        Clear Vergl_Str1$, Verg_Dat_1$, Verg_Dat_2$
        Vergl_Str1$ = GetText.Listview(Liste1&, &loop, 0)
        Verg_Dat_1$ = GetText.Listview(Liste1&, &loop, 1)
        SetText Status&, 0,  ">>> Vergleiche : " + Verg_Dat_1$****

        WhileLoop 0,GetCount(Liste2&)-1

            Vergl_Str2$ = GetText.Listview(Liste2&, &loop, 0)

            If Vergl_Str1$ = Vergl_Str2$

                Verg_Dat_2$ = GetText.Listview(Liste2&, &loop, 1)

                IfNot Verg_Dat_1$ = Verg_Dat_2$

                    Inc Vergl_Pass&
                    AddString(Liste3&, Verg_Dat_1$ + "|" + Verg_Dat_2$)

                EndIF

            EndIf

        EndWhile

        SetText Status&, 1,  "# "+str(&loop+1) + " > " + str(100/Zaehler1&*(&loop+1)) + " %"****
        Sendmessage(ProgressBar&,$0400+2,100/Zaehler1&*(&loop+1),0)****

    EndWhile

    SetText Status&, 1, Date$(0)****
    Sendmessage(ProgressBar&,$0400+2,0,0)****

EndProc


Ich seh wohl das Weiß vor lauter Schnee nicht mehr

Ist einziges nproc im Programm. In XProfan läufts wunderbar, nur halt zu langsam.
Und genau DEN Unterschied wollte ich gern mal sehen
 
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...
16.03.2010  
 



Geschwindigkeitstests wirken erst richtig bei Long, sobald man Float und/oder String nutzt, ists nur noch threadsicher aber nicht mehr sooo schnell.

SetText Status& müsste SetText(Status heißen, 3-Parameter-SetText und SetText als Befehl in nProcs gibt es ja nicht.

SetText Status&, 0, ">>> Vergleiche : " + Verg_Dat_1$****

Die 0 ist kein String, drum die (korrekte) Meldung. ^^
 
16.03.2010  
 




E.T.
So, alles rausgeschmissen, was nicht lebenswichtig ist:
nProc Vergleichen

    Declare Verg_Dat_1$, Verg_Dat_2$, Vergl_Str1$, Vergl_Str2$, Vergl_Pass&, Pos_L1&
    Zaehler1& = GetCount(Liste1&)-1

    WhileLoop 0,GetCount(Liste1&)-1

        Vergl_Str1$ = GetText.Listview(Liste1&, &loop, 0)
        Verg_Dat_1$ = GetText.Listview(Liste1&, &loop, 1)

        WhileLoop 0,GetCount(Liste2&)-1

            Vergl_Str2$ = GetText.Listview(Liste2&, &loop, 0)

            If Vergl_Str1$ = Vergl_Str2$

                Verg_Dat_2$ = GetText.Listview(Liste2&, &loop, 1)

                IfNot Verg_Dat_1$ = Verg_Dat_2$

                    Inc Vergl_Pass&
                    AddString(Liste3&, Verg_Dat_1$ + "|" + Verg_Dat_2$)

                EndIF

            EndIf

        EndWhile

    EndWhile

EndProc


Fazit: gleiche Meldung :

Warnung: Zuweisung zwischen String und Long.
Funktion: VERGLEICHEN
Abhilfe: STR
Mapfile: angewiesen


Ich verstehs nicht
 
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...
16.03.2010  
 



Schaue ich mir gleich heute Abend genauer an!
 
16.03.2010  
 



Öhm, wenn ich alle Variablen deklariere die Du in der Proc nutzt, läuft es ohne Fehler durch:

XProfan 11.2.1.8a.62 Praekompiler [XPSE]
Copyright (C) 1998-2010 XProfan.Com, built DE.

Datei: test.xprf (22)
Objektcode: Creating object: TEST.EXP
Creating library: TEST.LIB
Stats: If[68], Proc[54], Klassen[0], Assembler[54]
Runtime: "prfrun32.exe", gefunden
Kompiler: "profcomp.exe", gefunden
[C]ompile [I ]nterpr [L]ink [R]unPrc Run[E]xe [S]ource [H]ilfe

XPSE:> Kompilieren: Code: 0 [erfolg] (140202 B PRC)
XPSE:> Linken: Code: 0 [erfolg] (566 KB EXE)
XPSE:> Ausfuehren: Code: 0 [erfolg]
XPSE:>

 {$cle}
cls
waitinput
end
Gemerkt/Separiert von http://xprofan.com/t/?8130

nProc Vergleichen

    Declare liste3&,liste2&,liste1&,Zaehler1&,Verg_Dat_1$, Verg_Dat_2$, Vergl_Str1$, Vergl_Str2$, Vergl_Pass&, Pos_L1&
    Zaehler1& = GetCount(Liste1&)-1

    WhileLoop 0,GetCount(Liste1&)-1

        Vergl_Str1$ = GetText.Listview(Liste1&, &loop, 0)
        Verg_Dat_1$ = GetText.Listview(Liste1&, &loop, 1)

        WhileLoop 0,GetCount(Liste2&)-1

            Vergl_Str2$ = GetText.Listview(Liste2&, &loop, 0)

            If Vergl_Str1$ = Vergl_Str2$

                Verg_Dat_2$ = GetText.Listview(Liste2&, &loop, 1)

                IfNot Verg_Dat_1$ = Verg_Dat_2$

                    Inc Vergl_Pass&
                    AddString(Liste3&, Verg_Dat_1$ + "|" + Verg_Dat_2$)

                EndIF

            EndIf

        EndWhile

    EndWhile

EndProc

Wobei ich da auch nur den Warnungen von XPSE gefolgt bin und deklariert habe, was er als fehlend bemeckerte. Der Fehler müsste demnach vlt. in einer anderen Proc versteckt sein.
 
16.03.2010  
 




E.T.
Jetzt versteh ich gar nix mehr:
Wenn ich deinen Quelltext aus vorigem Post hernehme, sieht meine XPSE-Ausgabe nicht wie deine aus, sondern:



XProfan 11.2.1.8a.62 Praekompiler [XPSE]
Copyright (C) 1998-2010 XProfan.Com, built DE.

Datei: e:profan 11-proggs
proc_test
proc_test.prf (22)

Warnung: Zuweisung zwischen String und Long.
Funktion: VERGLEICHEN
Abhilfe: STR

[C]ompile [I ]nterpr [L]ink [R]unPrc Run[E]xe [S]ource [H]ilfe

XPSE:>

Hab doch aber die gleiche Version, nur bei mir steht viel weniger in der Ausgabe

Gefunden: XPSE nochmal neu "installiert" (gleiche Versions-Nummer), jetzt hauts hin  
 
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...
22.03.2010  
 




Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

10.929 Betrachtungen

Unbenanntvor 0 min.
Ernst07.05.2016
funkheld11.04.2016
Peter Max Müller10.10.2014
Andreas Koch16.12.2013
Mehr...

Themeninformationen

Dieses Thema hat 3 Teilnehmer:

iF (11x)
E.T. (9x)
Jörg Sellmeyer (1x)


Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie