AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

listenindex überschreitet das maximum (1)

Ein Thema von appolode · begonnen am 28. Sep 2008 · letzter Beitrag vom 29. Sep 2008
Antwort Antwort
appolode

Registriert seit: 28. Sep 2008
Ort: berlin
7 Beiträge
 
Delphi 7 Enterprise
 
#1

listenindex überschreitet das maximum (1)

  Alt 28. Sep 2008, 16:43
Hallo,
ich versuche das folgnde zu realisieren :
- auf eine fremde Applikation zuzugreifen, diese Applikation hat ein TListView und wird ständig mit neuen Daten gefüllt
- mein Program soll diese Liste überwachen, und wenn einen neuen Eitrag kommt, mit einem doppelklick reagieren.

Das habe ich so gemacht :
Delphi-Quellcode:
procedure TForm1.btstartClick(Sender: TObject);
var temp : integer;
    punkt: TPoint;
    cursPos : TPoint;
    Wnd : HWND;
     sClass : array[0..99] of Char;
    phonepunkt : Tpoint;
begin
  temp := GetNumberOfItems;
  GetWindowPosition;
  punkt.X := winrect.Left + ZielLeft + ZielWidth div 2;
  punkt.Y := winrect.Top + ZielTop + ZielHeigth div 2;

  Punkt.x := Round(Punkt.x * (65535 / Screen.Width)) ;
  Punkt.y := Round(Punkt.y * (65535 / Screen.Height)) ;


  Mouse_Event(MOUSEEVENTF_ABSOLUTE or
              MOUSEEVENTF_MOVE,
               punkt.x, punkt.y, 0, 0) ;


 while ( temp = GetNumberOfItems) do
  begin end;
   Mouse_Event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);
   Mouse_Event(MOUSEEVENTF_LEFTUP,0,0,0,0);
   //KeyBd_Event(VK_UP, 0, 0, 0);
   //KeyBd_Event(VK_F7, 0, 0, 0);
end;
die folgende ermittelt den ItemsAnzahl in der fremden ListView
Delphi-Quellcode:
function TForm1.GetNumberOfItems : integer;
var
    i : integer;
begin
  i:=SendMessage(WTadvListView, LVM_GETITEMCOUNT, 0, 0);
  lbitems.Caption := inttostr(i);
  result := i;
end;
Aber wenn einen neuen Eintrag kommt, reagiert die fremde Applikation auf das klick mit :
Linstenindex überschreitet das maximum (1)

und weiss nicht warum?
Wie kriege das hin?
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: listenindex überschreitet das maximum (1)

  Alt 28. Sep 2008, 16:47
Der Index beginnt bei 0
Markus Kinzler
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#3

Re: listenindex überschreitet das maximum (1)

  Alt 29. Sep 2008, 08:27
Herzlich willkommen in der Delphi-PRAXiS, appolode.

Nach deiner Beschreibung zu urteilen tritt der Fehler in der fremden Anwendung auf, vermutlich weil dort schlampig programmiert wurde. Hast du schon überprüft, dass du an die richtige Stelle klickst? Hast du dir auch mal die Benachrichtigungen LVN_INSERTITEM, LVN_DELETEITEM und LVN_ITEMCHANGED angesehen?

Freundliche Grüße vom marabu
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine 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 aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:14 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz