Italia
Stammtisch & Caffè

Erledigt: Gridbox und Mausklick (getCursel -1)

 
Bestimmt sehe ich mal wieder den Wald vor lauter Bäumen nicht
Also da ist eine Gridbox, in welcher eine Auflistung von Daten steht. Mit Klick auf eine Zeile wird der zugehörende Eintrag gezeigt. Klappt perfekt.
Wenn ich aber auf einen (noch) freien Platz in der Gridbox klicke, bekomme ich eine Fehlermeldung und das Programm beendet sich. Wie kann Io l' Klick in den leeren Raum auffangen ?
Ich habe:
anzahl&=GETCOUNT(inhalt&)
nr&=GETCURSEL(inhalt&)
titel$=GETSTRING$(inhalt&,nr&)
 
01.07.2008  
 




Jörg
Sellmeyer
Es wäre noch interessant zu Wissen, welcher Art die Fehlermeldung ist.
Beendet es sich dann sofort, oder erst, wenn Du was ausweten willst. Du könntest checken, ob GetCurSel() > -1 ist. Ich vermute, das ist das Problem.
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
01.07.2008  
 



Hier ist die Fehlermeldung (die Variablen sind etwas anders)

36 kB
Hochgeladen:01.07.2008
Downloadcounter212
Download
 
01.07.2008  
 




Jörg
Sellmeyer
Check mal vorher auf GetCurSel > -1
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
01.07.2008  
 




KompilierenMarkierenSeparieren
IF Getfocus(mn_inhalt&)  mn_inhalt& ist die Gridbox

    CHDIR pfad$
    nr%=GETCURSEL(mn_Inhalt&)
    titel$=GETSTRING$(mn_inhalt&,nr%)
    DATEN_ANZEIGEN titel$ hier werden die Daten gezeigt...
    SETFOCUS(mn_Inhalt&)

/a>

Das ist die Abfrage - wie soll ich da checken ???
 
01.07.2008  
 




Jac
de
Lad

KompilierenMarkierenSeparieren
IF Getfocus(mn_inhalt&)mn_inhalt& ist die Gridbox

    CHDIR pfad$
    nr%=GETCURSEL(mn_Inhalt&)

    if n%>-1

        titel$=GETSTRING$(mn_inhalt&,nr%)
        DATEN_ANZEIGEN titel$hier werden die Daten gezeigt...
        SETFOCUS(mn_Inhalt&)

    endif

Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
01.07.2008  
 



Hab doch gewusst ...sehe den Wald vor lauter Bäumen nicht ! - Das liegt bestimmt an der Krankheit, die mit A anfängt (wie hieß die doch wieder ? ) -
Danke Jac - es klappt
 
01.07.2008  
 



Ebenso eine böse Falle ich die ich selbst schon tappte - Roland hatte das von einer XProfanversion zur anderen geändert das getString$ eine Fehlermeldung ausgibt wenn der 2. Parameter kleiner Null ist. Nimm:
KompilierenMarkierenSeparieren
proc lb.myGetCurSelString

    parameters hLB&
    var curSel&=getCurSel(hLB&)
    case curSel&<0 : return
    return getString$(hLB&,curSel&)

end
a>
 
01.07.2008  
 




Dieter
Zornow
Das getcursel -1 ist eine böse Falle in Xprofan, ich hatte das vor längerer Zeit schon bemängelt. Ich denke, beim Aufruf von Getstring() sollte profanintern überprüft werden ob der Wert -1 und dann kein Aufruf stattfinden. Obwohl ich es weiß vergesse ich das oftmals und das Programm schmiert ab, eine sehr unschöne Sache in Profan. ich habe gerade eben wegen der Anfrage ein kürzlich erstelltes Programm getestet und habe naturalmente vergessen erts auf -1 abzufragen.
 
Er ist ein Mann wie ein Baum. Sie nennen ihn Bonsai., Win 7 32 bit und Win 7 64 bit, mit XProfan X2
01.07.2008  
 



Na das baut mich doch wieder auf, wenn ich lese, dass auch Experten in diese Falle getappt sind. Ich werde es bestimmt nicht mehr vergessen.
 
01.07.2008  
 




Jörg
Sellmeyer
Das potrebbe bis dahin helfen:
KompilierenMarkierenSeparieren
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
01.07.2008  
 



Answer


Topictitle, max. 100 characters.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Topic-Options

5.799 Views

Untitledvor 0 min.
H.Brill06.02.2022
kustg17.05.2019
ByteAttack09.12.2016
Christof Neuß15.10.2016
Di più...

Themeninformationen



Admins  |  AGB  |  Applications  |  Autori  |  Chat  |  Informativa sulla privacy  |  Download  |  Entrance  |  Aiuto  |  Merchantportal  |  Impronta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Giochi  |  Cerca  |  Support

Ein Projekt aller XProfaner, die es gibt!


Il mio XProfan
Private Notizie
Eigenes Ablageforum
Argomenti-Merkliste
Eigene Beiträge
Eigene Argomenti
Zwischenablage
Annullare
 Deutsch English Français Español Italia
Traduzioni

Informativa sulla privacy


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