Sry, bin am Handy.
Habs so gelöst, dass du zuerst ein leeres Bild erstellst ('') und nach Guisetstate das Bild setzt. Schau mal in Hilfe nach, wie das funktioniert, sry dass ich dir jetzt nicht komplett helfen kann
Beiträge von Stevenx
-
-
[autoit]
Execute($EW - $AW / $LV
[/autoit]Steve
-
Happy Birthday
-
Du hast ja die Teilen Funktion eingebaut
Cool, als nächstes kommt ne bessere GUI
Steve
-
Genial. Mir fehlen die Worte
Steve
-
Wie meinst du das? Deine Übersetzung hab ich eigentlich nicht verbessert bzw. verändert; nur noch um neu dazugekommene Sachen ergänzt.
Ich verbessere es gerade, mir scheinen einige Sätze verwirrend zu sein
Aber hab einen Bug in der xMsgBox.au3 gefunden.
[autoit]Opt("OnExitFunc","MsgBoxHookDeRegister")
[/autoit]durch
[autoit]OnAutoItExitRegister("MsgBoxHookDeRegister")
[/autoit]ersetzen.
Steve
-
-
Sofort Ekel-Nerds bewundern
LOL
naja, Stern eben xD
-
Genau wie PainTain gesagt hat, nutz doch
[autoit]_Crypt_EncryptFile()
[/autoit]Steve
-
Hey, nutze doch einfach:
[autoit]@CPUArch
[/autoit]"X86" bei 32 Bit und "X64" bei 64bit
Steve
-
Fürs erste find ich das nicht schlecht. Habe nun kein Quellcode angeguckt, lediglich mal geschaut ob es funktioniert und wie es ausschaut. Wobei der optische Aspekt ja uninteressant ist, da man sich das ja bauen kann wie man mag
Somit +1
THX
-
Hey,
mein erstes veröffentliches Script seit langem und eigentlich mein erstes GDI+ Experiment.
Ihr könnt damit eine MP3 Datei öffnen und den Pegel grafisch darstellen lassen:
Spoiler anzeigen
[autoit]#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
[/autoit] [autoit][/autoit] [autoit]
#AutoIt3Wrapper_Outfile=SoundPegel.exe
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
#include <Bass.au3>
#include <BassConstants.au3>
#include <GUIConstantsEx.au3>
#include <ProgressConstants.au3>
#include <WindowsConstants.au3>
#include <GdiPlus.au3>$l_max = 0
[/autoit] [autoit][/autoit] [autoit]
$r_max = 0$fps = 0
[/autoit] [autoit][/autoit] [autoit];~ BASS
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
_BASS_STARTUP("bass.dll")
_BASS_Init(0, -1, 44100, 0, "")
If @error Then
MsgBox(16,"ERROR","")
Exit
EndIf$file = FileOpenDialog("Öffne Datei","","MP3 (*.mp3)")
[/autoit] [autoit][/autoit] [autoit]
$diff = InputBox("Toleranz","Gebe den Toleranzwert ein",1)$hMusic = _BASS_StreamCreateFile(False,$file, 0, 0, 0)
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
_BASS_ChannelPlay($hMusic, 1)
$hLevels = _BASS_ChannelGetLevel ($hMusic)
$hLevels_l = (_BASS_HiWord ($hLevels) / 32768) * 100
$hLevels_r = (_BASS_LoWord ($hLevels) / 32768) * 100
AdlibRegister("_FPS",1000);~ GUI
[/autoit] [autoit][/autoit] [autoit]
$hGui = GUICreate("SoundPegel", 615, 166)
GUISetBkColor(0x000000)
GUISetState(@SW_SHOW)
GUISetState(@SW_MAXIMIZE);~ Texte - Labels
[/autoit] [autoit][/autoit] [autoit];~ Links
[/autoit] [autoit][/autoit] [autoit]
$lbl_1 = GUICtrlCreateLabel("",@DesktopWidth / 2 - 70,@DesktopHeight-80,100,50)
_font_set($lbl_1);~ Rechts
[/autoit] [autoit][/autoit] [autoit]
$lbl_2 = GUICtrlCreateLabel("",@DesktopWidth / 2 + 140,@DesktopHeight-80,100,50)
_font_set($lbl_2);~ Max Werte
[/autoit] [autoit][/autoit] [autoit]
$lbl_max_l = GUICtrlCreateLabel("",@DesktopWidth / 2 - 90,@DesktopHeight-60,100,50)
$lbl_max_r = GUICtrlCreateLabel("",@DesktopWidth / 2 + 120,@DesktopHeight-60,100,50)
_font_set($lbl_max_l)
_font_set($lbl_max_r);~ FPS
[/autoit] [autoit][/autoit] [autoit]
$lbl_fps = GUICtrlCreateLabel("",10,10,100,100)
_font_set($lbl_fps);~ GDI+
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
_GDIPlus_Startup() ;Starten
Global $hBrush = _GDIPlus_BrushCreateSolid(0xFF00E5FF) ;Brush setzen
$hGraphic = _GDIPlus_GraphicsCreateFromHWND($hGUI)While 1
[/autoit] [autoit][/autoit] [autoit]
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
_GDIPlus_Shutdown() ;GDI+
_BASS_Free() ;BASS
ExitEndSwitch
[/autoit] [autoit][/autoit] [autoit];~ Pegel bekommen
[/autoit] [autoit][/autoit] [autoit]
$hLevels_l_alt = $hLevels_l
$hLevels_r_alt = $hLevels_r
$hLevels = _BASS_ChannelGetLevel ($hMusic)
$hLevels_l = (_BASS_HiWord ($hLevels) / 32768) * 100
$hLevels_r = (_BASS_LoWord ($hLevels) / 32768) * 100;~ Labels setzen
[/autoit] [autoit][/autoit] [autoit]
GUICtrlSetData($lbl_1,Round($hLevels_l,3))
GUICtrlSetData($lbl_2,Round($hLevels_r,3));~ Max Werte setzen - links
[/autoit] [autoit][/autoit] [autoit]
If $l_max < $hLevels_l and $hLevels_l <> 100 Then
$l_max = $hLevels_l
GUICtrlSetData($lbl_max_l,"Max: "&Round($l_max,3))
EndIf;~ Max Werte setzen - rechts
[/autoit] [autoit][/autoit] [autoit]
If $r_max < $hLevels_r and $hLevels_r <> 100 Then
$r_max = $hLevels_r
GUICtrlSetData($lbl_max_r,"Max: " &Round($r_max,3))
EndIf;~ GDI: Balken erstellen
[/autoit] [autoit][/autoit] [autoit]
If Abs($hLevels_l - $hLevels_l_alt) > $diff or Abs($hLevels_r - $hLevels_r_alt) > $diff Then
_WinAPI_RedrawWindow($hgui)
$img_l = _GDIPlus_GraphicsFillRect($hGraphic,@DesktopWidth / 2 - 100,@DesktopHeight-100 -($hLevels_l*5),100,$hLevels_l*5,$hBrush)
$img_r = _GDIPlus_GraphicsFillRect($hGraphic,@DesktopWidth / 2 +100,@DesktopHeight -100 -($hLevels_r*5),100,$hLevels_r*5,$hBrush)
EndIf$fps += 1
[/autoit] [autoit][/autoit] [autoit]WEnd
[/autoit] [autoit][/autoit] [autoit];~ Funktion damit alles übersichtlicher wirkt
[/autoit] [autoit][/autoit] [autoit]
Func _font_set($iCtrl)
GUICtrlSetBkColor($iCtrl,-1)
GUICtrlSetColor($iCtrl,0x00FBFF)
GUICtrlSetFont($iCtrl,10,100)
EndFuncFunc _FPS()
[/autoit]
GUICtrlSetData($lbl_fps,"FPS: "&$fps)
$fps = 0
EndFunc//Max Werte
//Vollbild
//Werte unter BalkenVergisst nicht auf die BASS.dll UDF
StevenX
-
Hey, have fun
-
Wieso machst du keine PHP, die den Ordnerinhalt auflistet und das liest du dann aus?
Steve
//Sry, so von wieso verschwunden
-
Hi,
die "Lösung" mittels StringToBinary() ist imho alles andere als optimal!
Sämtliche Linefeeds und ggf. auch in Zukunft auftretende Sonderzeichen werden per StringToBinary() nicht entfernt, sie sind im String enthalten und werden sicher später noch zu Ärger führen....
Man sollte "fehlerhafte" Daten nicht durch das gesamte Programm schleppen, sondern sie direkt so aufbereiten, dass sämtliche weiteren Scriptteile damit einfach weiterarbeiten können.Du hast nichteinmal selbst herausgefunden, dass dein String Zeichen enthält, mit denen einige AutoItfunktionen nicht klarkommen. Glaubst du etwa, dass andere Funktionen die "Sonderzeichen" in deinem String ignorieren?
Pfuu dachte es lag an den ":" und den Klammern und so... Jo solltest dann Andy hören
Steve
-
Hey,
der String "Sonntagsfrage (93): Was halten Sie davon, die Wahlperiode auf 5 Jahre auszuweiten?" enthält zu viele Sonderzeichen. Konvertier alles in Binary und wieder zurück (oder gibts eine einfachere Methode?)
[autoit]#include <INet.au3>
[/autoit][autoit][/autoit][autoit]
#Include <String.au3>
#include <Array.au3>$IniPath = @ScriptDir & "/Data.ini"
[/autoit][autoit][/autoit][autoit]Local $oIE = 'http://www.der-postillon.com/'
[/autoit][autoit][/autoit][autoit]
Local $sStart = "<h3 class='post-title entry-title' itemprop='name'>"
Local $sEnd = '</h3>'
Local $sQuellcode = _INetGetSource($oIE)
Local $aQuellcode = _StringBetween($sQuellcode, $sStart, $sEnd)
Local $aTitle = _StringBetween ($aQuellcode [0],'>','</a>')IniWrite ($IniPath, "Der-Postillon", "Latest_Title", StringToBinary($aTitle [0]))
[/autoit][autoit][/autoit][autoit]ConsoleWrite ("Data1: "&$aTitle[0])
[/autoit][autoit][/autoit][autoit]$Title = BinaryToString(IniRead ($IniPath, "Der-Postillon", "Latest_Title", "fehler"));
[/autoit][autoit][/autoit][autoit]ConsoleWrite ("Data2: "&$Title)
[/autoit][autoit][/autoit][autoit]
ConsoleWrite (@Crlf)Exit
[/autoit]Steve
-
Jesus, danke, original Musik. Auf YouTube meistens schlechte Quali.
Lime
-
Ich hab damit gemeint, dass das Video in VEGAS gemacht wurde und ich mich dort mit dem Timeshift und Pan und Crop nicht auskenne
Cheers
-
Wollt ich eigentlich auch, bis ich gemerkt habe, dass ich mich mit dem Sony VEGAS [hier bitte passendes Wort einsetzen] (Make ;)) nicht auskenne Ich ach das mal mit After Effects, dauert länger, aber ich kenn mich da wenigstens aus...
-
1. Befehl ist
[autoit]DirRemove($FullPath,1)
[/autoit]
[autoit]
2. Benutz@AppDataDir
[/autoit]Cheers
€DIT: BugFix war schneller