Français
Forum

GetItemText funktioniert pas

 
- page 1 -


Salut,

qui Funktion GetItemText funktioniert chez Je ne, si je cela LV pas sur dem Hauptfenster (%hWnd) erstelle.
KompilierenMarqueSéparation ->
KompilierenMarqueSéparation
LV2& = CreateListView(Dialog&,%hInstance,GetSysColor(23),GetSysColor(24),-1,$31)
>
->

j'ai cela gleiche Problem avec v1.6 et v1.7.

Woran peux cela liegen? - fais je quoi faux?

merci pour Eure Mithilfe
Thomas
 
12.10.2005  
 



 
- page 1 -



Michael
Wodrich
[quote-part:cc5b333cb1=Gast]
@Michael: comment bschrieben ist GB2& une GroupBox, erstellt avec Créer(Groupbox,%hWnd,Text,0.0.100,100)[/quote-part:cc5b333cb1]
cela Problem ist oui simple, qui wir Deinen Code pas voyons peut. So ist naturellement une Aider pas possible. ici la hâte Du z.B. simple une Faute de frappe (Punkte statt Kommata) gemacht.
comment cela im echten Code aussieht - eh bien...

là wirst Du ensuite wohl la fois debuggen doit. simple pour chaque Element, cela beteiligt ist une Datenausgabe écrivons. Ist cela gelieferte Handle wirklich ungleich zéro usw.
sur cet Art dois Du toi ensuite à den faute herantasten. Evtl. statt qui Code-Einfügungen aussi den richtigen Debugger benutzen - en supplément ist il oui là...

belle Grüße
Michael Wodrich
 
Programmieren, das spannendste Detektivspiel der Welt.
14.10.2005  
 




Frank
Abbing
So, Invité Thomas.

maintenant konnte ego testen. GetItemText() funktioniert einwandfrei aussi avec Dialogfenstern!
tu fais alors irgendwo une anderen faute, wahrscheinlich den Syntaxfehler, comment ihn Michael oui déjà beschrieben hatte.

Poste s'il te plaît nächstes la fois toujours une kompletten Minimalsource, qui cela Problem aufweist, cela du annoncer vouloir. Ansonsten ist une Fehlersuche simple pas nachvollziehbar.
 
15.10.2005  
 



Ok, OK.

une Syntaxfehler peux je définitif ausschließen, car si je GB2& vers %hWnd tausche, funktionierts! Aussi volonté Syntaxfehler gemeldet, mais ici habe je un kurzes Listing vorbereitet:
KompilierenMarqueSéparation
declare GB1&,GB2&,GB3&,GB4&,LV1&,LV2&,lvdll&
declare ende&,btn&,txt1&,txt2&
declare LVmarked&,LineMarked&,IsMarked&
declare LV_Mem#,LVItemText$
dim LV_Mem#,256
CLS
ListView DLL & Funktionen bereitstellen
lvdll& = UseDLL("Listview.dll")
 $I LV_FUNCTION.INC
InitMessages(%HWnd)
InitMessages(GB2&)
Bildschirmmaske aufbauen
GB1&  = Create("Groupbox",%hWnd," Groupbox #1 - Handle des LV auf %hWnd ", 10, 10,300,180)
GB2&  = Create("Groupbox",%hWnd," Groupbox #2 - Handle des LV auf GB2& " , 10,210,300,180)
GB3&  = Create("Groupbox",%hWnd,""                                       ,310,140,160, 50)
GB4&  = Create("Groupbox",%hWnd,""                                       ,310,340,160, 50)
txt1& = Create("TEXT"    ,GB3& ,"..."                                    , 10, 12,140, 30)
txt2& = Create("TEXT"    ,GB4& ,"..."                                    , 10, 12,140, 30)
btn&  = Create("Button"  ,%hWnd,"DATEN WERDEN EINGELESEN..."             , 10,400,620, 30)
ende& = Create("Button"  ,%hWnd,"Beenden"                                ,530, 10,100,380)
EnableWindow btn& ,0
EnableWindow ende&,0
LV erstellen
dieses LV wird auf dem Hauptfenster erstellt
LV1& = CreateListView(%hWnd,%HInstance,RGB(0,0,0),RGB(0,127,127),-1,$25)
InsertColumn LV1&," "       ,40,0
InsertColumn LV1&,"LS- Nr." ,90,0
InsertColumn LV1&,"Art.-Nr.",90,0
und dieses auf der Groupbox, die auf dem Hauptfenster erstellt wurde
LV2& = CreateListView(GB2&,%HInstance,RGB(0,0,0),RGB(127,127,127),-1,$25)
InsertColumn LV2&," "       ,40,0
InsertColumn LV2&,"LS- Nr." ,90,0
InsertColumn LV2&,"Art.-Nr.",90,0
Einlesen der DB
LS_NR und ART_NR sind alphanumerisch (C,10)
dbOPEN(#1,"LS")
dbUse(#1)
Einlesen

WhileNot %dbEOF

    dbGo(&Loop -1)
    SetItem LV1&,"",Trim$(dbGet$("LS_NR")),Trim$(dbGet$("ART_NR")),Str$(&LOOP +1)
    SetItem LV2&,"",Trim$(dbGet$("LS_NR")),Trim$(dbGet$("ART_NR")),Str$(&LOOP +1)

WEnd

dbClose(#1)
Anzeigen der LVs
ShowListView(LV1&,20,30,252,150)
ShowListView(LV2&,10,20,252,150)
Beginn des Auslesens
SetText btn&,"Zum Auslesen markieren, dann hier klicken..."
EnableWindow ende&,1
EnableWindow btn& ,1

While 1

    CLEAR LV_Mem#,LVmarked&,LineMarked&,IsMarked&,LVItemText$
    WaitInput

    If %GetFocus = ende&

        Beenden
        break

    endif

    If %GetFocus = btn&

        Wurde in einem LV markiert?
        GetChecked(Addr(LVmarked&),Addr(LineMarked&),Addr(IsMarked&))

        If IsMarked&

            GetItemText(LVmarked&,LV_Mem#,2,LineMarked&)
            LVItemText$ = String$(LV_Mem#,0)

            If LVmarked& = LV1&

                SetText txt1&,LVItemText$
                SetText txt2&,"..."

            Else

                SetText txt1&,"..."
                SetText txt2&,LVItemText$

            EndIf

            SetCheckboxState(LVmarked&,LineMarked&,0)

        EndIf

    EndIf

WEnd

Handling abschalten
CloseMessages(GB2&)
CloseMessages(%HWnd)
Speicher aufräumen
Dispose clv1#
Dispose clv2#
Dispose clvall#
Dispose lvitem#
DLL entladen
FreeDLL lvdll&
cela wars!
FIN

ici peux je zwar dans GB2 qui Markierung mettons / effacer, mais ausgewertet wird vous pas...

mfG
Thomas

P.S. sur Wunsch schicke je qui DB comme ZIP trop.
 
16.10.2005  
 



@Thomas: mon Wunsch wäre cela qui Leuz ici dans qui Community cela vorgesehene
KompilierenMarqueSéparation Tags.

Salve.
 
16.10.2005  
 



 
- page 2 -


s'il te plaît bearbeite Dein obiges Posting et mets qui Tags.

et comment peux je mon Posting Travailler? ou bien soll je es récente enstellen ( avec Tags)?

mfG
Thomas
 
16.10.2005  
 




Michael
Wodrich
[quote-part:208ea1fd54=Gast]et comment peux je mon Posting Travailler?[/quote-part:208ea1fd54]
Du findest avant dem Ende chaque Postings - alors sur qui gestrichelten ligne number unten - sur qui rechten page folgendes:

éditer, Citation

avec éditer peux Du chaque selbst erstellte Posting nachträglich encore einmal Travailler.

avec Citation peux Du un fremdes Posting Citation. cela sollte naturellement seulement benutzt volonté, si Du une entier certain partie Citation vouloir.

chez Citation gilt: je kürzer, desto besser - lösche alles unwichtige aus dem QUOTE-journée heraus - mais: Zitate s'il te plaît pas verfälschen.

belle Grüße
Michael Wodrich

PS: chez den Grafiken sur dem Modifier le champ de peux Du avec # cela CODE-journée (pour qui Programmcodes) ouvrir et schliessen et qui Sprechblase daneben cela QUOTE-journée (alors qui Zitate).
 
Programmieren, das spannendste Detektivspiel der Welt.
16.10.2005  
 




Michael
Wodrich
trop Deinem Code:

Ist Dir pas aufgefallen, qui Du GB2& - encore vide (= 0) - avec InitMessages benutzt et seulement später cela Handle hineinpackst?

tu vois: quelquefois hilft es, quelque chose auführlichere Schnipsel trop posten...

[quote-part:a04aee18a3]là wirst Du ensuite wohl la fois debuggen doit. simple pour chaque Element, cela beteiligt ist une Datenausgabe écrivons. Ist cela gelieferte Handle wirklich ungleich zéro usw.
sur cet Art dois Du toi ensuite à den faute herantasten.[/quote-part:a04aee18a3]
...et cette Tipp de plus dessus zeigt Dir, qui cet Fehlerart wohl quelque chose häufiger vorkommt comme on es sich wünscht.

belle Grüße
Michael Wodrich
 
Programmieren, das spannendste Detektivspiel der Welt.
16.10.2005  
 



[quote-part:e6f458e01b=Michael Wodrich][quote-part:e6f458e01b=Gast]et comment peux je mon Posting Travailler?[/quote-part:e6f458e01b]
Du findest avant dem Ende chaque Postings - alors sur qui gestrichelten ligne number unten - sur qui rechten page folgendes:

éditer, Citation[/quote-part:e6f458e01b]Funktioniert cela aussi pour Gäste
 
16.10.2005  
 



oui, ici Maison » DLL » Listview.dll Forum funktioniert cela aussi pour Gäste solange cet encore pour qui Community comme qui Poster erkennbar sommes.

Salve.

Nachtrag: je hab es abgestellt là mir une Überprüfung anhand qui IP trop unsicher erscheint.
 
16.10.2005  
 




Frank
Abbing
oui c'est ca. tu peux InitMessages() pour un la fenêtre naturellement seulement appel, si cet bereits erstellt wurde...
 
16.10.2005  
 



merci!

Nunja, cela komplette Programme besteht z.Zt. aus 25 Unterprogrammen avec ca. 18800 Zeilen - là peux on sone Kleinigkeit la fois übersehen...

Vielen Dank - aussi pour Eure patience!

Thomas
 
16.10.2005  
 



avons wir doch gern gemacht.

Thomas registriere toi doch simple - ensuite la hâte Du ici aussi plus möglichkeiten - z.B. Dateiuploads à Posts hängen - ou bien Posts éditer etc.

ensuite vois Du De toute façon wenns quoi Neues gibt.

Salve.
 
17.10.2005  
 




répondre


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

2.437 Views

Untitledvor 0 min.
Peter Max Müller09.06.2015
Jörg Sellmeyer15.03.2012

Themeninformationen



Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie