Guten Tag
da es zur Zeit im Forum nciht viel los ist, wollte ich das ändern:)
Ich sitze zur Zeit an einem einfachen Programm das mir Screenshots mach.Eigentlich habe ich vor das Programm so zuschreiben das es nach dem "Screenshotmachen" ,den Screenshot direckt auf irgenteinen Pichoster lädt und ein Link ind die Zwischenablage kopiert.
Soweit so gut.
Nur leider habe ich auch die ersten Probleme.
Problem Nambar wan: siehe Punkt 1 im Code
Also ich muss ehrlich sagen das ich als Hilfe den Code von Herrn pastl genommen habe. (was er mir hoffentlich verzeiht )
Das Problem ist das es beim Kompliemieren zum Fehler kommt, "Unknown function name".Habe ich vergessen was zu includen oder woran liegt das?
Problem Number tu: Na ja kein wirkliches Problem zu mindestens noch nicht:).Es ist eigentlich eine Schwierigkeit. Ich mit der Funktion Fenster() quasi nur von einem Fenster Screen machen. Die Schwierigkeit liegt darin das ich das ohne ein Hotkey realisieren will .Das heißt ich drücken den Button Fenster und danach will ich das Fenster Auswählen von dem ich ein Screen machen will.
Kann mir jemand evtl. mal ein kurzes Beispiel Code Posten?
Naja soweit so gut.
Wie gesagt ist WIP. Deswegen werde ich hier meine Erfolge posten.(falls es welche gibt:) )
#include <GUIConstants.au3>
#Include <Constants.au3>
; == GUI generated with Koda ==
$Form1 = GUICreate("ScreenMaker", 283, 276, 234, 276)
$FullscreenB = GUICtrlCreateButton("Volles Bildschirm", 8, 16, 161, 41)
$FensterB = GUICtrlCreateButton("Fenster", 8, 72, 161, 41)
$AuswahlB = GUICtrlCreateButton("Ausschnitt", 8, 128, 161, 41)
GUICtrlCreateLabel("Andrej D.", 180, 112, 48, 17)
$Quali = GUICtrlCreateInput("100", 184, 24, 89, 21, -1, $WS_EX_CLIENTEDGE)
GUISetState(@SW_SHOW)
While 1
$msg = GUIGetMsg()
Select
Case $msg = $GUI_EVENT_CLOSE
ExitLoop
Case $msg = $FullscreenB
Fullscreen()
Case $msg = $FensterB
Fenster()
Case $msg=$AuswahlB
Auswahl()
EndSelect
WEnd
Exit
Func Fullscreen()
GUISetState(@SW_MINIMIZE)
DllCall("captdll.dll", "int", "CaptureScreen", "str", "screenshot.jpg", "int", 100)
GUISetState(@SW_RESTORE)
EndFunc ;==>Fullscreen
Func Fenster()
Local $Cwin1 = WinGetHandle("")
Local $Cwin2 = WinGetPos($Cwin1)
DllCall("captdll.dll", "int", "CaptureRegion", "str", "screenshotfenster.jpg", "int", $Cwin2[0], "int", $Cwin2[1], "int", $Cwin2[2], "int", $Cwin2[3], "int", 100)
EndFunc ;==>Fenster
Func Auswahl()
Local $UserDLL = DllOpen("user32.dll")
While 1
If _IsPressed ("01", $UserDLL) Then;<------Punkt 1
Local $Start_Pos = MouseGetPos()
draw_label ()
ExitLoop
EndIf
WEnd
If Not _IsPressed ("01", $UserDLL) Then;<------Punkt 1
Local $End_Pos = MouseGetPos()
If $End_Pos[0] < $Start_Pos[0] And $End_Pos[1] > $Start_Pos[1] Then
$left = $End_Pos[0]
$top = $Start_Pos[1]
$with = $Start_Pos[0] - $End_Pos[0]
$height = $End_Pos[1] - $Start_Pos[1]
EndIf
EndIf
DllClose($UserDLL)
EndFunc
Alles anzeigen