Hey
Ich traue mich mal über mein erstes richtiges non TCP Projekt.
"SaphireScreen"
Zurzeit ist es relativ primitiv gemacht, doch man kann bis jetzt:
- Den gesamten Bildschirm aufnehmen
- Eine bestimmte Region aufnehmen
- Auswählen ob es als PNG oder als JPEG gespeichert werden soll
Source:
Spoiler anzeigen
;*****************************************
;CreepyScreen by CreepSore
;*****************************************
#include <ScreenCapture.au3>
#include <WindowsConstants.au3>
#Include <GuiButton.au3>
#include <Array.au3>
#include <GUIConstantsEx.au3>
#include <MsgBoxConstants.au3>
#Region -- GUI --
Global $Menu = GUICreate("CreepyScreen - Menu",447,172,-1,-1,-1)
GUISetBkColor(0x6793E2,$Menu)
Global $Full = GUICtrlCreateButton("Capture Screen",7,3,100,30,-1,-1)
Global $Region = GUICtrlCreateButton("Capture Region",340,3,100,30,-1,-1)
Global $About = GUICtrlCreateButton("?",420,150,20,20,-1,-1)
Global $Exit = GUICtrlCreateButton("Exit",4,152,56,18,-1,-1)
GUICtrlCreateLabel("Ausgabeformat:",10,50,76,15,-1,-1)
GUICtrlSetBkColor(-1,"-2")
GUIStartGroup()
$R1 = GUICtrlCreateRadio("JPEG",10,70,76,20,-1,-1)
$R2 = GUICtrlCreateRadio("PNG",10,90,76,20,-1,-1)
GUISetState( $R1, $GUI_CHECKED )
GUISetState(@SW_SHOW,$Menu)
#EndRegion -- GUI --
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $Full
GUISetState( @SW_HIDE, $Menu )
ToolTip( "5.." )
Sleep( 1000 )
ToolTip( "4.." )
Sleep( 1000 )
ToolTip( "3.." )
Sleep( 1000 )
ToolTip( "2.." )
Sleep( 1000 )
ToolTip( "Get Ready.." )
Sleep( 1000 )
ToolTip( "" )
$Test2 = GUICtrlRead( $R1 )
If $Test2 = "1" Then
_ScreenCapture_Capture( "Screenshot.jpeg" )
Sleep( 5000 )
GUISetState( @SW_SHOW, $Menu )
Else
_ScreenCapture_Capture( "Screenshot.png" )
Sleep( 5000 )
GUISetState( @SW_SHOW, $Menu )
EndIf
Case $Region
ToolTip( "Wähle Punkt 1 mit F1 aus!", 0, 0, "SaphireScreen" )
HotKeySet( "{F1}", _x )
Case $About
$result = MsgBox(64,"SaphireScreen - Hilfe","SaphireScreen ist ein kostenloses Screenshot-Programm in der Alpha Phase." & @CRLF & "" & @CRLF & "Hilfestellung:" & @CRLF & "1) Wähle das gewünschte Format aus (Keine Auswahl führt zu PNG!)" & @CRLF & "2) Wähle deine gewünschte Art." & @CRLF & "2)a) 'Capture Screen'" & @CRLF & "Bei Capture Screen wird der GESAMTE Bildschirm in 5 Sekunden aufgenommen." & @CRLF & "2)b) 'Capture Region'" & @CRLF & "Bei Capture Region wird ein gewählter Bereich aufgenommen." & @CRLF & "" & @CRLF & "" & @CRLF & "Viel Spaß mit diesem Programm wünscht CreepSore" & @CRLF & @CRLF & "(Exit Button nur genutzt, bis Bug endlich gefixt.)",0)
Case $Exit
Exit
EndSwitch
WEnd
Func _x()
Global $aPos = MouseGetPos()
HotKeySet( "{F2}", _y )
ToolTip( "Wähle Punkt 2 mit F2 aus!", 0, 0, "SaphireScreen" )
EndFunc
Func _y()
Global $bPos = MouseGetPos()
ToolTip( "Drücke F3 um einen Screenshot zu machen!", 0, 0, "SaphireScreen" )
HotKeySet( "{F3}", _screen )
EndFunc
Func _screen()
GUISetState( @SW_HIDE, $Menu )
Sleep( 1500 )
ToolTip( "" )
$Test1 = GUICtrlRead( $R1 )
If $Test1 = 1 Then
_ScreenCapture_Capture( "Screenshot.jpeg", $aPos[0], $aPos[1], $bPos[0], $bPos[1])
MsgBox( 0, "SaphireScreen - Captured", "Screenshot wurde aufgenommen!" )
Sleep( 2000 )
GUISetState( @SW_SHOW, $Menu )
Else
_ScreenCapture_Capture( "Screenshot.png", $aPos[0], $aPos[1], $bPos[0], $bPos[1])
MsgBox( 0, "SaphireScreen - Captured", "Screenshot wurde aufgenommen!" )
Sleep( 2000 )
GUISetState( @SW_SHOW, $Menu )
EndIf
EndFunc
Changelog:
Spoiler anzeigen
SaphireScreen - Changelog
------------------------------------------------------------------
/////////////////////////////////////////
///Datum: 01.02.2015
///Betreff: Blue Alpha 2.0
///Bearbeiter: CreepSore
/////////////////////////////////////////
------------------------------------------------------------------
v 1.0
--> GUI wurde erstellt
--> Fullscreen-Capture Funktion hinzugefügt
--> Bugfixes
v1.5
--> Bugfix der Region Function. (Danke an timee000)
--> "About" Button wurde hinzugefügt
v2.0
--> Neue GUI
--> "About" Button zu "Hilfe" Button geändert!
--> Neue Funktion! Auswahl der Bildart zwischen "JPEG" und "PNG"
------------------------------------------------------------------
Neueste Version:
"Blue Alpha v2.0"
Mit dem nächsten Update, werde ich mehrere einstellungsmöglichkeiten hinzufügen.
Und JA ich weiß, dass es bereits um einiges bessere ScreenshotProgramme gibt.
Aber wie irgendjemand bereits gesagt hat:
"Mit kleinen Schritten zum Erfolg!"
Teilt doch eure Meinung!