Listbox senden mit klick (anfängerfrage)

  • VB.NET

Es gibt 54 Antworten in diesem Thema. Der letzte Beitrag () ist von Gonger96.

    Ich schätze mal das liegt daran, weil nicht jedes Fenster automatisch den Focus in das richtige Eingabefeld setzt...
    Den müsstest du dann selber setzen (falls möglich, das weiß ich selbst nicht)
    Ich Antworte nach bestem Wissen und Gewissen. Ich übernehme keine Garantie für die Richtigkeit oder Fehlerfreiheit meiner Texte.


    Ich konnte dir helfen?
    - Das ist schön :) Ich würde mich über ein "Hilfreich" freuen ^^

    VB.NET-Quellcode

    1. <DllImport("user32")>
    2. Private Shared Function SetForegroundWindow(ByVal winHandle As IntPtr) As Boolean
    3. End Function
    4. Private Sub ListBox1_DoubleClick(ByVal sender As Object, ByVal e As EventArgs) Handles ListBox1.DoubleClick
    5. Dim p As Process() = Process.GetProcessesByName("PidginPortable.exe")
    6. If p.Count > 0 Then
    7. Dim handle As IntPtr = p(0).MainWindowHandle
    8. SetForegroundWindow(handle)
    9. SendKeys.Send(ListBox1.SelectedItem)
    10. End If


    der prozess heisst PidginPortable.exe
    das fenster heisst wie der chatpartner zb Simon
    Das war jetzt der Code...

    Aber es bleibt noch eine Frage ungeklärt (ich habe nur geraten)

    sonne75 schrieb:

    Wie äußert sich das "geht nicht"
    Ich Antworte nach bestem Wissen und Gewissen. Ich übernehme keine Garantie für die Richtigkeit oder Fehlerfreiheit meiner Texte.


    Ich konnte dir helfen?
    - Das ist schön :) Ich würde mich über ein "Hilfreich" freuen ^^
    Hast du mal per Haltepunkt geschaut ob dein "if" erreicht wird?
    There is no CLOUD - just other people's computers

    Q: Why do JAVA developers wear glasses?
    A: Because they can't C#

    Daily prayer:
    "Dear Lord, grand me the strength not to kill any stupid people today and please grant me the ability to punch them in the face over standard TCP/IP."
    Hat die Anwendung mehrere Fenster?

    Also z.B. ein Hauptfenster und für den Chat ein weiteres?

    MainWindowHandle Holt (wie der Name schon sagt) nur das Handle für das MainWindow
    Ich Antworte nach bestem Wissen und Gewissen. Ich übernehme keine Garantie für die Richtigkeit oder Fehlerfreiheit meiner Texte.


    Ich konnte dir helfen?
    - Das ist schön :) Ich würde mich über ein "Hilfreich" freuen ^^

    misbe schrieb:

    Hat die Anwendung mehrere Fenster?

    Also z.B. ein Hauptfenster und für den Chat ein weiteres?

    MainWindowHandle Holt (wie der Name schon sagt) nur das Handle für das MainWindow


    jop genau das sind 2 fenster

    ohne .exe am Ende ja das hab ich auch versucht hat leider nix geändet

    ich habe das gleiche schonmal mit einer anderen programmsprache (autoit) gemacht da gabs einfach einen befehl "winaktivate, fenstername" das ging problemlos also ich dachte sowas in der art muss es bei VB auch geben
    @tom2000
    Ich wieder hole mal meine Frage: Kommt dein Code an Zeile 7 an?
    There is no CLOUD - just other people's computers

    Q: Why do JAVA developers wear glasses?
    A: Because they can't C#

    Daily prayer:
    "Dear Lord, grand me the strength not to kill any stupid people today and please grant me the ability to punch them in the face over standard TCP/IP."
    @sonne75 Danke. Ich war gerade noch damit beschäftigt leise in ein Kissen zu weinen als ich den Beitrag gelesen habe.

    @tom2000 Debugging & Haltepunkte sind DAS Hilfsmittel um Fehler im Code zu finden. Bitte lies dir den Link von sonne durch. Das ist essenziell!
    @tom2000 2. Es ist hier nicht gerne gesehen den kompletten Post als Quote zu wiederholen, vor allem wenn der noch direkt über deinem Steht. Denn Ich weiß was ich geschrieben hab und falls es mir entfallen ist kann ich nachlesen.
    There is no CLOUD - just other people's computers

    Q: Why do JAVA developers wear glasses?
    A: Because they can't C#

    Daily prayer:
    "Dear Lord, grand me the strength not to kill any stupid people today and please grant me the ability to punch them in the face over standard TCP/IP."
    ja ok dachte man soll hier post als quote wiederholen weil es alle gemacht haben , aber gut ich lass es weg :D

    ich habe mir das debuggen durchgelesen und so gemacht hat aber nix gebracht
    das problem is wohl immernoch das das fenster kein eigenen prozess hat
    die frage is wohl immernoch wie man ein fenster per titel-name ansteuert

    hab auch in google gesucht leider bisher vergeblich :(
    Ich hab in einem alten Projekt mal diesen Code verwendet:

    VB.NET-Quellcode

    1. Dim oProcessList As Process() = Process.GetProcesses
    2. Dim oProcess As Process
    3. System.Threading.Thread.Sleep(1000)
    4. For Each oProcess In oProcessList
    5. Debug.Print(oProcess.MainWindowTitle)
    6. If oProcess.MainWindowTitle.Contains("Bankarbeitsplatz") Then
    7. fenster = oProcess.MainWindowHandle
    8. ShowWindow(fenster, 1)
    9. SetForegroundWindow(fenster)
    10. End If
    11. Next
    There is no CLOUD - just other people's computers

    Q: Why do JAVA developers wear glasses?
    A: Because they can't C#

    Daily prayer:
    "Dear Lord, grand me the strength not to kill any stupid people today and please grant me the ability to punch them in the face over standard TCP/IP."

    tom2000 schrieb:

    ich habe mir das debuggen durchgelesen und so gemacht hat aber nix gebracht


    Schamash schrieb:

    Kommt dein Code an Zeile 7 an?
    Ich Antworte nach bestem Wissen und Gewissen. Ich übernehme keine Garantie für die Richtigkeit oder Fehlerfreiheit meiner Texte.


    Ich konnte dir helfen?
    - Das ist schön :) Ich würde mich über ein "Hilfreich" freuen ^^

    tom2000 schrieb:

    das problem is wohl immernoch das das fenster kein eigenen prozess hat


    Das Debuggen an sich sucht dir Fehler und beseitigt die Probleme doch nicht. Es ging darum, dass du deinen Code Schritt für Schritt durchgehst und schaust, wo er hinspringt. Wenn der Chat ein anderes MainWindowHandle hat, als du brauchst, dann musst du schauen, ob es einen anderen Handle gibt.
    vielen dank für die antwort , abs getestet das funtioniert bei mir leider nicht
    hab grade aber selber die lösung gefunden mit nur 1 zeile
    es ist sehr einfach man muss nur das eingeben

    VB.NET-Quellcode

    1. Private Sub ListBox1_DoubleClick(ByVal sender As Object, ByVal e As EventArgs) Handles ListBox1.DoubleClick
    2. [b]AppActivate("simon")[/b]
    3. SendKeys.Send(ListBox1.SelectedItem)

    Und wenn dein Chatpartner jetzt mal nicht Simon heist?
    Ich Antworte nach bestem Wissen und Gewissen. Ich übernehme keine Garantie für die Richtigkeit oder Fehlerfreiheit meiner Texte.


    Ich konnte dir helfen?
    - Das ist schön :) Ich würde mich über ein "Hilfreich" freuen ^^