Paules-PC-Forum.de Anzeige:

Microsoft Windows Intune: PC-Verwaltung und -Sicherheit in der Cloud: Updateverwaltung, Anti-Virus und vieles mehr!


Zurück   Paules-PC-Forum.de > Programmierung > XProfan > Spezielles

Spezielles Für die Bereiche API, Subclassing, Inline-Assembler, Prozesse, ect.

EM-Tippspiel

Paule bei Facebook


Paule bei Twitter


Letzte Forenthemen
Gehe zum ersten neuen Beitrag PPF - Spiel "Wörter weiter...
Aufrufe: 26915, Antworten: 4218
Gehe zum ersten neuen Beitrag Algorithmen Teil IV...
Aufrufe: 3326, Antworten: 122
Gehe zum ersten neuen Beitrag Von Live CD Windowspfad...
Aufrufe: 312, Antworten: 19
Gehe zum ersten neuen Beitrag Bundesliga-Tippspiel Saision...
Aufrufe: 7643, Antworten: 185
Gehe zum ersten neuen Beitrag Captur 2.2 (Snow Leo)
Aufrufe: 20, Antworten: 0
Gehe zum ersten neuen Beitrag Captur 2.3 (Lion)
Aufrufe: 23, Antworten: 0
Gehe zum ersten neuen Beitrag Acer Aspire 8745ZG fährt...
Aufrufe: 58, Antworten: 6
Gehe zum ersten neuen Beitrag Rechner fährt herunter,...
Aufrufe: 146, Antworten: 9
Gehe zum ersten neuen Beitrag avs4you_com Lizenz oder Abo?
Aufrufe: 71, Antworten: 4
Gehe zum ersten neuen Beitrag PPF - Shoppingwahn
Aufrufe: 50944, Antworten: 1395
Zeige:





Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 24.05.2011, 20:08   #1 (Direktlink)
Super-Moderator
 
Benutzerbild von Jac de Lad
 
Registriert seit: 06.02.2009
Ort: Coswig
Alter: 27
Beiträge: 1.159
Standard CHeckboxen in Listview auslesen

Hallo.

Weiß jemand wie man die Checkboxen in einem Listview per API/sendmessage auslesen kann? Ich bastel noch mit LVM_GetItem rum, krieg das aber irgendwie nicht hin.

Jac
__________________
XProfan-Profi (XProfan X2+XPIA)
http://jacdelad.bplaced.net
http://jacdelad.square7.ch
Jac de Lad ist offline   Mit Zitat antworten
Werbung

Windows 7 Tipps und Tricks in Bildern

Alt 24.05.2011, 20:56   #2 (Direktlink)
Super-Moderator
 
Benutzerbild von Frabbing
 
Registriert seit: 05.02.2009
Ort: Westliches NRW
Alter: 44
Beiträge: 5.094
Standard

Code:
state& = SendMessage(lv&, ~LVM_GETITEMSTATE, zeile&, ~LVIS_STATEIMAGEMASK)
__________________
Gruß, Frank


Webpage http://frabbing.bplaced.net
mit Freeware - Tools, Spiele und Grafiken.
Frabbing ist offline   Mit Zitat antworten
Alt 25.05.2011, 04:23   #3 (Direktlink)
Dauergast
 
Benutzerbild von p. specht
 
Registriert seit: 06.02.2009
Ort: Wien, Österreich
Beiträge: 1.079
Standard

Als allgemeine Frage zu API-Programmierung überhaupt gemeint:
Ist die API da besser als @GetCheck(hdl%)?
__________________
Win7-64HomPremSP1,XProfan11.2a,XPIA,JWasm,XPSE,IntelCoreQuad2.5GHz/4GB/je1TB HD intern:esataBay:USB2:USB3
p. specht ist offline   Mit Zitat antworten
Alt 25.05.2011, 08:13   #4 (Direktlink)
AHT
Super-Moderator
 
Registriert seit: 15.02.2009
Beiträge: 10.786
Standard

Allgemein: Alles was über XProfan interne Befehle läuft, geht schneller als über API.
Da Profaninterne Sachen aber sehr oft nicht so funktionieren, wie ich das für ein Programm brauche, regele ich in der Regel trotzdem die meisten Sachen über API.
__________________
______________

Bitte Schnelltest durchführen: Neuer Virus, ahnungslose User seit Monaten infiziert!

Mfg

AHT
AHT ist offline   Mit Zitat antworten
Alt 25.05.2011, 11:21   #5 (Direktlink)
Super-Moderator
 
Benutzerbild von Frabbing
 
Registriert seit: 05.02.2009
Ort: Westliches NRW
Alter: 44
Beiträge: 5.094
Standard

Hatte GetCheck(hdl%) nicht getestet, funktioniert das überhaupt, weil keine Zeile angegeben wird...? Die Message oben verwende ich so in der Listview.dll.
Ob ich die Message direkt absetze, oder einen Befehl dazu aufrufe: Die unterschiedliche Zeit wird wohl kaum messbar sein, weil es immer Zeit benötigt, bis eine Message beim Fenster/Control ankommt. Dann sollte PostMessage schneller sein, weil das nicht wartet, bis die Message angekommen ist, sondern sofort zurückkehrt.
__________________
Gruß, Frank


Webpage http://frabbing.bplaced.net
mit Freeware - Tools, Spiele und Grafiken.
Frabbing ist offline   Mit Zitat antworten
Werbung

Windows 7 Tipps und Tricks in Bildern

Alt 25.05.2011, 15:02   #6 (Direktlink)
Super-Moderator
 
Benutzerbild von Jac de Lad
 
Registriert seit: 06.02.2009
Ort: Coswig
Alter: 27
Beiträge: 1.159
Standard

GetCheck() dürfte meines Erachtens nicht funktionieren, weil es nicht für Listviews konzipiert ist.

Das Sendmessage hatte ich auch schon so in der Art, aber ich muss erstmal schauen, wie ich state& auswerte.
__________________
XProfan-Profi (XProfan X2+XPIA)
http://jacdelad.bplaced.net
http://jacdelad.square7.ch
Jac de Lad ist offline   Mit Zitat antworten
Alt 25.05.2011, 16:10   #7 (Direktlink)
RGH
Forenmaskottchen
 
Benutzerbild von RGH
 
Registriert seit: 08.02.2009
Ort: Nußloch (bei Heidelberg)
Beiträge: 550
Standard

Hallo,
da es Microsoft gefällt selbst für gleiche Funktionen bei unterschiedlichen Dialogelementen auch unterschiedliche Messages zu verwenden funktioniert getCheck() in diesem Falle nicht, zumal es ja noch einen Parameter für die Zeile/Spalte der Listbox geben müsste, in der sich die Checkbox befindet.

Dass z.B. getText$() in XProfan für so viele unterschiedliche Dialogelemente funktioniert, liegt daran, dass hier XProfan versucht, es dem Programmierer einfach zu machen: es überprüft, zu welcher Klasse das Handle gehört und fragt dann die nötigen Parameter ab und ruft die entsprechende Message auf.

Gruß
Roland
__________________
Pentium D 2,8 GHz / 3 GB RAM / 500 GB HDD / ATI Radeon HD5450 1024 MB / Windows 7(32) - XProfan X2.0c
AMD Athlon II X2 2,9 GHz / 3 GB RAM / 500 GB HDD / ATI Radeon 3000 / Windows 7(64) - XProfan X2.0c


http://www.xprofan.de
RGH ist offline   Mit Zitat antworten
Alt 25.05.2011, 17:25   #8 (Direktlink)
Super-Moderator
 
Benutzerbild von Frabbing
 
Registriert seit: 05.02.2009
Ort: Westliches NRW
Alter: 44
Beiträge: 5.094
Standard

Du kannst auch nicht jede Message als Befehl umsetzen. Wer den Umfang seiner Programmiersprache erweitern möchte, sollte sich unbedingt mit API beschäftigen.

Zitat:
...es überprüft, zu welcher Klasse das Handle gehört und fragt dann die nötigen Parameter ab und ruft die entsprechende Message auf.
Somit wird eine direkt per SendMessage geschickte Nachricht also in jedem Fall schneller arbeiten. Muss nicht den Klassennamen ermitteln und mit verschiedenen Namen vergleichen und verzweigend reagieren...
__________________
Gruß, Frank


Webpage http://frabbing.bplaced.net
mit Freeware - Tools, Spiele und Grafiken.
Frabbing ist offline   Mit Zitat antworten
Alt 25.05.2011, 18:49   #9 (Direktlink)
Super-Moderator
 
Benutzerbild von Jac de Lad
 
Registriert seit: 06.02.2009
Ort: Coswig
Alter: 27
Beiträge: 1.159
Standard

@Frank: Aber nicht jeder will API lernen oder hat die Zeit dafür, es ist ja auch nicht immer einfach. Und so macht XProfan einen guten Job. Geschwindigkeit ist auch nicht immer entscheidend.
__________________
XProfan-Profi (XProfan X2+XPIA)
http://jacdelad.bplaced.net
http://jacdelad.square7.ch
Jac de Lad ist offline   Mit Zitat antworten
Alt 25.05.2011, 19:49   #10 (Direktlink)
Super-Moderator
 
Benutzerbild von Jac de Lad
 
Registriert seit: 06.02.2009
Ort: Coswig
Alter: 27
Beiträge: 1.159
Standard

Aha:

Code:
case SendMessage(lv&,LVM_GETITEMSTATE,zeile&,LVIS_STATEIMAGEMASK)=8192:TuIrgendwas
__________________
XProfan-Profi (XProfan X2+XPIA)
http://jacdelad.bplaced.net
http://jacdelad.square7.ch
Jac de Lad ist offline   Mit Zitat antworten
Werbung

Windows 7 Tipps und Tricks in Bildern

Alt 26.05.2011, 11:57   #11 (Direktlink)
AHT
Super-Moderator
 
Registriert seit: 15.02.2009
Beiträge: 10.786
Standard

Zitat:
Zitat von Frabbing Beitrag anzeigen
Somit wird eine direkt per SendMessage geschickte Nachricht also in jedem Fall schneller arbeiten.
Das Ermitteln der Klasse läuft intern ja über Delphi ab.
XProfan wandelt aber jeden einzelnen Parameter einer API oder Befehls um und durchläuft im Interpreter eine sehr umfangreiche Schleife. SendMessage braucht 4 Parameter, Getcheck nur einen. Ich kann das bei mir leider nicht testen - ich nehme aber an, das auch hier SendMessage und API langsamer ist.
__________________
______________

Bitte Schnelltest durchführen: Neuer Virus, ahnungslose User seit Monaten infiziert!

Mfg

AHT
AHT ist offline   Mit Zitat antworten
Alt 26.05.2011, 12:17   #12 (Direktlink)
Super-Moderator
 
Benutzerbild von Frabbing
 
Registriert seit: 05.02.2009
Ort: Westliches NRW
Alter: 44
Beiträge: 5.094
Standard

Ich denke nicht, dass die Zeitspanne irgendeine Rolle spielt. Auch wenn das intern in Delphi abläuft, der Klassenname muss ermittelt werden (API), der Name mit einer Liste von möglichen Klassennamen verglichen werden und dann muss verzweigt darauf reagiert werden. Gerade die Stringoperationen verbrauchen einiges an Zeit, da wird intern auf allerhand Speicheradressen lesend zugegriffen usw.. Ich denke, da tut sich nichts. Wer grad nichts zu tun hat, kann es ja gerne mal testen.
__________________
Gruß, Frank


Webpage http://frabbing.bplaced.net
mit Freeware - Tools, Spiele und Grafiken.
Frabbing ist offline   Mit Zitat antworten
Alt 26.05.2011, 12:21   #13 (Direktlink)
AHT
Super-Moderator
 
Registriert seit: 15.02.2009
Beiträge: 10.786
Standard

Lass mal XProfan über einen Debugger laufen, dann siehst du, was wohl schneller ist.
__________________
______________

Bitte Schnelltest durchführen: Neuer Virus, ahnungslose User seit Monaten infiziert!

Mfg

AHT
AHT ist offline   Mit Zitat antworten
Alt 26.05.2011, 12:36   #14 (Direktlink)
Forenmaskottchen
 
Benutzerbild von ts-soft
 
Registriert seit: 16.05.2010
Ort: Berlin
Beiträge: 724
Standard

Wenn ich das ganze in einer Schleife 10000x Abfrage, dann kommt da was
Messbares bei raus, aber im Normalfalle sollte das ganze vollkommen
uninteressant sein. Die evtl. "gewonnenen" ms gammelt das Programm
später im EventLoop ab. Es lohnt doch garnicht drüber Nachzudenken
__________________
Gruß Thomas

Wenn mir früher jemand gesagt hätte, ich würde
freiwillig eine Wanze mit mir herum tragen und sie
auch noch selbst aufladen, hätte ich laut gelacht.

Heute habe ich ein Smartphone.


http://realsource.de
ts-soft ist offline   Mit Zitat antworten
Alt 26.05.2011, 14:34   #15 (Direktlink)
Super-Moderator
 
Benutzerbild von Frabbing
 
Registriert seit: 05.02.2009
Ort: Westliches NRW
Alter: 44
Beiträge: 5.094
Standard

Ganz genau.
__________________
Gruß, Frank


Webpage http://frabbing.bplaced.net
mit Freeware - Tools, Spiele und Grafiken.
Frabbing ist offline   Mit Zitat antworten
Werbung

Windows 7 Tipps und Tricks in Bildern

Antwort

  Paules-PC-Forum.de > Programmierung > XProfan > Spezielles

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen erlaubt, neue Themen zu verfassen.
Es ist Ihnen erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Sortierfunktion in der Listview.dll horsthorn Dlls, Includes, Units & Prozeduren 14 16.02.2011 07:32
Listview.dll und Richtungstasten horsthorn Dlls, Includes, Units & Prozeduren 2 01.02.2010 13:46
Wie baue ich listview ein? Peter C. Dlls, Includes, Units & Prozeduren 12 31.03.2009 08:14
listview Peter C. Spezielles 6 29.03.2009 00:41
Listview Peter C. Helfer & Tools 3 28.03.2009 09:30



Alle Zeitangaben in WEZ +2. Es ist jetzt 06:10 Uhr.


Powered by vBulletin® Version 3.8.7 (Deutsch)
Copyright ©2000 - 2012, vBulletin Solutions, Inc.
Powered by vBCMS® 2.7.0 ©2002 - 2012 vbdesigns.de
(c) Paules-PC-Forum.de

::: Impressum :::

Search Engine Optimization by vBSEO 3.3.2