AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi ListBox Item(s) per ENTER mit einer Anwendung öffnen
Thema durchsuchen
Ansicht
Themen-Optionen

ListBox Item(s) per ENTER mit einer Anwendung öffnen

Ein Thema von LuCSteR · begonnen am 1. Sep 2008 · letzter Beitrag vom 1. Sep 2008
Antwort Antwort
Seite 1 von 2  1 2      
LuCSteR

Registriert seit: 16. Sep 2005
168 Beiträge
 
#1

ListBox Item(s) per ENTER mit einer Anwendung öffnen

  Alt 1. Sep 2008, 12:34
Hi,

also mir ist nix besseres zur Themenbeschreibung eingefallen. Sorry o_O
Es geht mir darum:
In einer ListBox stehen die Namen von Log-Dateien eines Ordners drin. Durch Doppelklick/ENTER auf ein Item (bzw. auch bei MultiSelect) soll die zugehörige Log-Datei mit einem best. Programm (TextPad) geöffnet werden. Bei Mehrfachselektierung von Items soll jedes in einem seperaten TextPad-Fenster geöffnet werden.

Ich habe mir gedacht das ganze über eine OnKeyUp/OnKeyDown Ereignis der ListBox zu lösen.

Meine Frage dazu ist:
Welche Befehle benötige ich, um eine Anwendung zu starten? Bzw. wie heißt dieses Themengebiet, was sich mit solchen Problemen beschäftigt, damit ich mir selbst das nötige Wissen zusammensuchen kann?

Grüße
  Mit Zitat antworten Zitat
Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.763 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: ListBox Item(s) per ENTER mit einer Anwendung öffnen

  Alt 1. Sep 2008, 12:38
ShellExecute, sollte da am Anfang helfen können. Gibt von da ausgehend noch ein paar andere Möglichkeiten. Aber zum Einstieg reicht das.

Sherlock
Oliver
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.542 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: ListBox Item(s) per ENTER mit einer Anwendung öffnen

  Alt 1. Sep 2008, 12:39
Schau Dir mal Hier im Forum suchenShellExecute an.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
LuCSteR

Registriert seit: 16. Sep 2005
168 Beiträge
 
#4

Re: ListBox Item(s) per ENTER mit einer Anwendung öffnen

  Alt 1. Sep 2008, 13:35
Delphi-Quellcode:
if Key=VK_RETURN then
  for i:=0 to ListBox7.Items.Count-1 do
    if ListBox7.Selected[i] then
      ShellExecute(nil, 'open', DownloadDir+ListBox7.Items[i], nil, nil, SW_SHOWNORMAL); //SW_SHOW funktioniert auch nicht :/
Diese Fehler bringt der Compiler:

Unit1.pas(763,20) Error: Identifier not found "VK_RETURN"
Unit1.pas(766,89) Error: Identifier not found "SW_SHOWNORMAL"

Warum? Habe ShellAPI in die Uses-Klausel eingebunden. Richtig oder?
  Mit Zitat antworten Zitat
Benutzerbild von Marc.
Marc.

Registriert seit: 14. Mär 2008
Ort: Aachen
22 Beiträge
 
Delphi 2009 Professional
 
#5

Re: ListBox Item(s) per ENTER mit einer Anwendung öffnen

  Alt 1. Sep 2008, 13:38
Richtig! Hast Du auch die Unit Windows in der Klausel stehen?
  Mit Zitat antworten Zitat
Benutzerbild von STS301
STS301

Registriert seit: 6. Nov 2007
668 Beiträge
 
Delphi 7 Personal
 
#6

Re: ListBox Item(s) per ENTER mit einer Anwendung öffnen

  Alt 1. Sep 2008, 13:39
in welchem Event hast du es reingeschrieben, es funktioniert nur mit VKDown unter OnKeyPress Bin mir nicht sicher, wenn es nicht funtioniert unter KeyDown, dann versuche es unter OnKeyPress)
Sebastian

ölpölp

Linux will rule the universe!!
  Mit Zitat antworten Zitat
LuCSteR

Registriert seit: 16. Sep 2005
168 Beiträge
 
#7

Re: ListBox Item(s) per ENTER mit einer Anwendung öffnen

  Alt 1. Sep 2008, 13:45
Guter Einwand erst einmal ^^

Hab das Ereignis im OnKeyUp, das ist problematisch sagst du?

auf jeden Fall habe ich jetzt eine Menge anderer Fehler, die es vorher nicht gab o_O

Unit1.pas(458,42) Error: Incompatible type for arg no. 1: Got "AnsiString", expected "PChar"
Unit1.pas(556,62) Error: Incompatible type for arg no. 1: Got "AnsiString", expected "PChar"
Unit1.pas(766,25) Error: Incompatible type for arg no. 1: Got "Pointer", expected "LongWord"
Unit1.pas(774) Fatal: There were 3 errors compiling module, stopping

Handelt sich jeweils um Dateipfadnamen bei:
DeleteFile()-Befehleb. Wie kommts?
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.542 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: ListBox Item(s) per ENTER mit einer Anwendung öffnen

  Alt 1. Sep 2008, 13:50
Schau Dir die Parameter von ShellExecute nochmal genau an.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von STS301
STS301

Registriert seit: 6. Nov 2007
668 Beiträge
 
Delphi 7 Personal
 
#9

Re: ListBox Item(s) per ENTER mit einer Anwendung öffnen

  Alt 1. Sep 2008, 13:51
schreib es unter OnKeyDown

edit: dürfte aber kein großer Unterschied zu OnKeyUp sein, oder?
Sebastian

ölpölp

Linux will rule the universe!!
  Mit Zitat antworten Zitat
LuCSteR

Registriert seit: 16. Sep 2005
168 Beiträge
 
#10

Re: ListBox Item(s) per ENTER mit einer Anwendung öffnen

  Alt 1. Sep 2008, 13:55
Die Fehler treten mit dem Einbinden von "Windows" auf. Und zwar an 2 Stellen, wo ich Dateien löschen will (die Pfadangabe). Die haben aber mit dem OnKeyDown garnix am Hut. Das hat auch vorher prima funktioniert.

@DeddyH: Gibt keinen Fehler mehr mit den Paramtern

hier die beiden Fehlerstellen:
DeleteFile(TempDir+SubStr); //PChar gefordert ?
DeleteFile(DownloadDir+ListBox4.Items[i]); //auch PChar gefordert ?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 10:32 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