1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. name22

Beiträge von name22

  • GDI+ GraphicsDrawImage - Bild wird nicht gezeichnet

    • name22
    • 22. Mai 2010 um 17:46

    Wieso fällt eigentlich niemandem dieser peinliche Schreibfehler auf? 8|

    Schreibweise 1 ("balloon"):
    [Blockierte Grafik: http://img193.imageshack.us/img193/8703/schreibfehler2.png]

    Schreibweise 2 ("ballon"):
    [Blockierte Grafik: http://img714.imageshack.us/img714/9571/schreibfehler1.png]

    Also echt... :rolleyes:

  • Real Dektop Tools [Leute gesucht & in bearbeitung]

    • name22
    • 22. Mai 2010 um 17:39

    Wenn ich das Feld aber von rechts nach links oder von unten nach oben ziehe wird kein Bild erstellt ;).
    Du musst es z.B. so machen:

    Spoiler anzeigen
    [autoit]

    #include <misc.au3>
    #Include <ScreenCapture.au3>

    [/autoit] [autoit][/autoit] [autoit]

    _screenSaver()

    [/autoit] [autoit][/autoit] [autoit]

    Func _screenSaver()
    MsgBox(48, "Hinweis", "Ziehen sie mit der Linken Maustaste ein Feld, was dann als Bilddatei abgespeichert werden kann")
    While 1
    If _IsPressed(01) Then
    $pos1 = MouseGetPos()
    While _IsPressed(01)
    Sleep(10)
    WEnd
    $pos2 = MouseGetPos()

    [/autoit] [autoit][/autoit] [autoit]

    If $pos1[0] > $pos2[0] Then _SwapValues($pos1[0], $pos2[0])
    If $pos1[1] > $pos2[1] Then _SwapValues($pos1[1], $pos2[1])

    [/autoit] [autoit][/autoit] [autoit]

    $screen = _ScreenCapture_Capture("", $pos1[0], $pos1[1], $pos2[0], $pos2[1])
    $pfad = FileSaveDialog("Datei speichern als...", @MyDocumentsDir, "Bilddateien(*.jpg ; *.bmp ; *.png)|JPEG(*.jpg)|Bitmap(*.bmp)|PNG(*.png)|Alle(*.*)", 18)
    If StringRight($pfad, 3) <> "jpg" Or StringRight($pfad, 3) <> "bmp" Or StringRight($pfad, 3) <> "png" Then $pfad &= ".jpg"
    If @error Then
    MsgBox(48, "SceenSaver", "Fehler beim Speichern!")
    ExitLoop
    EndIf
    _ScreenCapture_SaveImage($pfad, $screen)
    MsgBox(0, "ScreenSaver", "Bild gespeichert!")
    _WinAPI_DeleteObject($screen)
    ExitLoop
    EndIf
    Sleep(100)
    WEnd
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func _SwapValues(ByRef $Value1, ByRef $Value2)
    Local $BufferTmp = $Value1
    $Value1 = $Value2
    $Value2 = $BufferTmp
    EndFunc

    [/autoit]
  • Real Dektop Tools [Leute gesucht & in bearbeitung]

    • name22
    • 22. Mai 2010 um 13:49
    Zitat

    Ich werde das in meine Sidebar einbauen wenn das ok ist ^^


    Was glaubst du weswegen ich das hier reingestellt habe :P.
    Würde mich freuen wenn du es einbaust :thumbup: .

  • Real Dektop Tools [Leute gesucht & in bearbeitung]

    • name22
    • 22. Mai 2010 um 13:41
    Zitat

    name22: Wer Lust hat, kann es umsetzen. Ich hab dafür leider keine Zeit. :D


    Gut ich hätte Lust... Sobald ich weiß ob mein MouseMeter hier Anklang findet mache ich das auch noch... :D

  • Real Dektop Tools [Leute gesucht & in bearbeitung]

    • name22
    • 22. Mai 2010 um 13:37

    Was haltet ihr hiervon?
    Mein kleines MouseMeter müsste ich allerdings noch auf GDI+ umschreiben was kein Problem sein dürfte ;).
    Einstellungen könnt ihr per Rechtsklick vornehmen, welche dann in einer ini gespeichert werden.
    Besonders gefällt mir die Fensterverschiebung (einfach mal ins Fenster klicken und die Maus bewegen) 8) .

    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <Misc.au3>

    [/autoit] [autoit][/autoit] [autoit]

    $iGUIWidth = 165
    $iGUIHeight = 290

    [/autoit] [autoit][/autoit] [autoit]

    $iDeskDiag = IniRead("Data.ini", "Const", "DeskDiagInch", -1)
    If $iDeskDiag = -1 Then
    $iDeskDiag = InputBox("Bildschirmdiagonale", "Länge der Bildschirmdiagonale in Zoll: ", "17")
    If StringReplace($iDeskDiag, " ", "") = "" Then Exit
    IniWrite("Data.ini", "Const", "DeskDiagInch", $iDeskDiag)
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    $iTrans = IniRead("Data.ini", "Options", "Trans", -1)
    If $iTrans = -1 Then
    $iTrans = 200
    IniWrite("Data.ini", "Options", "Trans", $iTrans)
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    $sPos = IniRead("Data.ini", "Options", "WinPos", -1)
    If $sPos = -1 Then
    $sPos = @DesktopWidth - $iGUIWidth & ";" & @DesktopHeight - $iGUIHeight
    $iX = @DesktopWidth - $iGUIWidth
    $iY = @DesktopHeight - $iGUIHeight
    IniWrite("Data.ini", "Options", "WinPos", $sPos)
    Else
    $aPosTmp = StringSplit($sPos, ";", 2)
    $iX = $aPosTmp[0]
    $iY = $aPosTmp[1]
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    $iColorRGB = IniRead("Data.ini", "Options", "Color", -1)
    If $iColorRGB = -1 Then
    $iColorRGB = 0x545454
    IniWrite("Data.ini", "Options", "Color", $iColorRGB)
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    $PPI = Sqrt(@DesktopWidth ^ 2 + @DesktopHeight ^ 2) / $iDeskDiag
    $PPCm = Sqrt(@DesktopWidth ^ 2 + @DesktopHeight ^ 2) / ($iDeskDiag * 2.54)

    [/autoit] [autoit][/autoit] [autoit]

    $hWnd = GUICreate("MouseMeter", $iGUIWidth, $iGUIHeight, $iX, $iY, $WS_POPUP, $WS_EX_TOPMOST)
    $cMenu = GUICtrlCreateContextMenu()
    $cColorChoose = GUICtrlCreateMenuItem("Farbe...", $cMenu)
    $cTransparency = GUICtrlCreateMenuItem("Transparenz...", $cMenu)
    GUISetBkColor($iColorRGB, $hWnd)
    $Label1 = GUICtrlCreateLabel("Zurückgelegte Strecke:", 10, 10, 155)
    GUICtrlSetFont(-1, 10)
    GUICtrlSetColor(-1, 0xFFFFFF)
    $Label2 = GUICtrlCreateLabel("Zentimeter:", 10, 40)
    GUICtrlSetFont(-1, 10)
    GUICtrlSetColor(-1, 0xFFFFFF)
    $Label3 = GUICtrlCreateLabel("0", 10, 55, 70)
    GUICtrlSetFont(-1, 10)
    GUICtrlSetColor(-1, 0xFFFFFF)
    $Label4 = GUICtrlCreateLabel("Meter:", 10, 75)
    GUICtrlSetFont(-1, 10)
    GUICtrlSetColor(-1, 0xFFFFFF)
    $Label5 = GUICtrlCreateLabel("0", 10, 90, 70)
    GUICtrlSetFont(-1, 10)
    GUICtrlSetColor(-1, 0xFFFFFF)
    $Label6 = GUICtrlCreateLabel("Inch:", 10, 110)
    GUICtrlSetFont(-1, 10)
    GUICtrlSetColor(-1, 0xFFFFFF)
    $Label7 = GUICtrlCreateLabel("0", 10, 125, 70)
    GUICtrlSetFont(-1, 10)
    GUICtrlSetColor(-1, 0xFFFFFF)
    $Label8 = GUICtrlCreateLabel("Pixel:", 10, 145)
    GUICtrlSetFont(-1, 10)
    GUICtrlSetColor(-1, 0xFFFFFF)
    $Label9 = GUICtrlCreateLabel("0", 10, 160, 70)
    GUICtrlSetFont(-1, 10)
    GUICtrlSetColor(-1, 0xFFFFFF)
    $Label10 = GUICtrlCreateLabel("Geschwindigkeit:", 10, 180, 155)
    GUICtrlSetFont(-1, 10)
    GUICtrlSetColor(-1, 0xFFFFFF)
    GUICtrlSetFont(-1, 10)
    $Label11 = GUICtrlCreateLabel("Meter/Sekunde:", 10, 205)
    GUICtrlSetFont(-1, 10)
    GUICtrlSetColor(-1, 0xFFFFFF)
    $Label12 = GUICtrlCreateLabel("0", 10, 220, 70)
    GUICtrlSetFont(-1, 10)
    GUICtrlSetColor(-1, 0xFFFFFF)
    $Label13 = GUICtrlCreateLabel("Meter/Sekunde (Durchschnitt):", 10, 235, 100, 50)
    GUICtrlSetFont(-1, 10)
    GUICtrlSetColor(-1, 0xFFFFFF)
    $Label14 = GUICtrlCreateLabel("0", 10, 265, 70)
    GUICtrlSetFont(-1, 10)
    GUICtrlSetColor(-1, 0xFFFFFF)
    $Reset = GUICtrlCreateButton("Zurücksetzen", 90, 75, 70, 25)
    $Exit = GUICtrlCreateButton("Beenden", 90, 105, 70, 25)
    WinSetTrans($hWnd, "", $iTrans)
    GUISetState()

    [/autoit] [autoit][/autoit] [autoit]

    $hWnd_Slider = GUICreate("Transparenz", 200, 50)
    $cSlider = GUICtrlCreateSlider(5, 5, 190, 40)
    GUICtrlSetLimit(-1, 255, 0)
    GUICtrlSetData($cSlider, $iTrans)

    [/autoit] [autoit][/autoit] [autoit]

    $aPosOld = MouseGetPos()
    $iDistance = 0

    [/autoit] [autoit][/autoit] [autoit]

    $iTime = TimerInit()
    AdlibRegister("_Update", 30)

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $nMsg = GUIGetMsg(1)
    Switch $nMsg[0]
    Case $GUI_EVENT_CLOSE, $Exit
    IniWrite("Data.ini", "Options", "WinPos", $iX & ";" & $iY)
    Exit
    Case $Reset
    $iTime = TimerInit()
    $iDistance = 0
    _Update()
    Case $GUI_EVENT_PRIMARYDOWN
    _SetPos()
    Case $cColorChoose
    $iColorRGB_Tmp = _ChooseColor(2)
    If $iColorRGB_Tmp <> -1 Then GUISetBkColor($iColorRGB_Tmp, $hWnd)
    IniWrite("Data.ini", "Options", "Color", $iColorRGB_Tmp)
    Case $cTransparency
    GUISetState(@SW_DISABLE, $hWnd)
    GUISetState(@SW_SHOW, $hWnd_Slider)
    Do
    WinSetTrans($hWnd, "", GUICtrlRead($cSlider))
    Until GUIGetMsg() = $GUI_EVENT_CLOSE
    IniWrite("Data.ini", "Options", "Trans", GUICtrlRead($cSlider))
    GUISetState(@SW_ENABLE, $hWnd)
    GUISetState(@SW_HIDE, $hWnd_Slider)
    EndSwitch
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func _Update()
    $iTime2 = TimerInit()
    $aPosNew = MouseGetPos()
    $iDiff = _GetPointsDistance($aPosOld[0], $aPosOld[1], $aPosNew[0], $aPosNew[1])
    $iDistance += $iDiff
    GUICtrlSetData($Label3, Floor($iDistance / $PPCm))
    GUICtrlSetData($Label5, Floor($iDistance / $PPCm / 100))
    GUICtrlSetData($Label7, Floor($iDistance / $PPI))
    GUICtrlSetData($Label9, Floor($iDistance))
    GUICtrlSetData($Label12, Round(($iDiff / $PPCm / 100) / (TimerDiff($iTime2) / 1000), 4))
    GUICtrlSetData($Label14, Round(($iDistance / $PPCm / 100) / (TimerDiff($iTime) / 1000), 4))
    $aPosOld[0] = $aPosNew[0]
    $aPosOld[1] = $aPosNew[1]
    EndFunc ;==>_Update

    [/autoit] [autoit][/autoit] [autoit]

    Func _SetPos()
    Sleep(200)
    $aPosMouse = MouseGetPos()
    $iDistanceX = $iX - $aPosMouse[0]
    $iDistanceY = $iY - $aPosMouse[1]
    While _IsPressed("01")
    $aPosMouse = MouseGetPos()

    [/autoit] [autoit][/autoit] [autoit]

    $iDiffX = $aPosMouse[0] - $iX + $iDistanceX
    $iDiffY = $aPosMouse[1] - $iY + $iDistanceY

    [/autoit] [autoit][/autoit] [autoit]

    $iSpeedX = $iDiffX / 10
    $iSpeedY = $iDiffY / 10

    [/autoit] [autoit][/autoit] [autoit]

    $iX += $iSpeedX
    $iY += $iSpeedY

    [/autoit] [autoit][/autoit] [autoit]

    WinMove($hWnd, "", $iX, $iY)
    Sleep(30)
    WEnd
    EndFunc ;==>_SetPos

    [/autoit] [autoit][/autoit] [autoit]

    Func _GetPointsDistance($iPointX1, $iPointY1, $iPointX2, $iPointY2)
    Return Sqrt(($iPointX1 - $iPointX2) ^ 2 + ($iPointY1 - $iPointY2) ^ 2)
    EndFunc ;==>_GetPointsDistance

    [/autoit]


    Ich würde das gerne so anpassen, dass es zu euren anderen Tools passt, aber ich wollte vorher noch schauen ob ihr das überhaupt gebrauchen könnt. :D

    Edit: @tince Möchtest du das machen oder wolltest du nur deine Idee bereitstellen und fragen wer Lust hat das zu umzusetzen? :D

  • Kleiner "Melder"

    • name22
    • 22. Mai 2010 um 02:14

    Wie vielen Leuten müssen wir wohl noch das Funktionsprinzip der Jobbörse erklären?... :rolleyes:
    Du musst schon etwas als Gegenleistung anbieten... Was du willst ist nicht schwer umzusetzen, also wieso machst du es nicht selbst? Wir helfen dir dann gerne ;).

  • Defense

    • name22
    • 21. Mai 2010 um 21:58
    Zitat

    frag mal UEZ (den "Meister") nach einer besseren buffertechnik, das hilft :)


    Das ist die "Buffertechnik" die UEZ in seinen meisten Spielen oder Animationen verwendet ;).
    Ich habe mal einen Prototypen für Arbeitsspeicher basiertes Buffering gebastelt, sorgt für weitgehend flüssige Animationen... Das Problem sind allerdings RAM Überfüllung und ähnliches :(.
    Außerdem wird AutoIt ab einer bestimmten Anzahl von Objekten so oder so langsam... Ähnlich wie bei meiner GDI+ Partikel Explosion.
    Im Übrigen eignet sich das "vorzeichnen" von Frames nur für Animationen mit linearem Verlauf... :S

  • Real Dektop Tools [Leute gesucht & in bearbeitung]

    • name22
    • 21. Mai 2010 um 21:52

    Ich helfe euch natürlich gerne in GDI+ und Geometrie Sachen aus :thumbup: .
    Stehen wirklich nur die 2 Sachen aus der ToDo List zur Verfügung? :(

  • Probleme mit RadioBox-Zuordnung

    • name22
    • 21. Mai 2010 um 20:18

    Dein Script ist unübersichtlich und verwirrend... :wacko:
    z.B.

    [autoit]

    Exit

    [/autoit][autoit][/autoit][autoit]

    Case $msg = $GUI_EVENT_CLOSE
    Exit
    Case $msg = $GUI_EVENT_CLOSE
    Exit
    Exit
    EndSelect

    [/autoit]


    Das ergibt nämlich irgendwie keinen Sinnn...
    Genauso wenig wie du zweimal mit verschiedenen Select Abfragen die selbe Variable abfragst... :D

  • Probleme mit RadioBox-Zuordnung

    • name22
    • 21. Mai 2010 um 19:53

    Man kann eine Select in einer Select Abfrage machen ;).
    Das Problem liegt woanders... Also wäre ein Script jetzt hilfreich.

  • Welche Serie schaut ihr?

    • name22
    • 20. Mai 2010 um 21:04
    Zitat

    Yeah Scrubs ist oben mit dabei.
    Mein Favorit! :)


    Also darauf wäre ich ja jetzt nie gekommen :whistling: .
    Mein Favorit ist Family Guy, wobei ich Southpark auch oft anschaue. :D

  • Defense

    • name22
    • 20. Mai 2010 um 21:01

    Suuuper! :thumbup: Bis auf die Musik gefällt mir alles :P.
    Bald bin ich auch fertig ^^.
    Mann ich liebe Tower Defense... :love: Nicht schlecht, ich bin echt beeindruckt!

  • Msg eines GUI Controls in einer funktion auserhalb der while schleife

    • name22
    • 20. Mai 2010 um 20:42

    Das kommt auf das selbe raus, aber es ist kürzer ;).

  • Msg eines GUI Controls in einer funktion auserhalb der while schleife

    • name22
    • 20. Mai 2010 um 20:23

    Hier ein Beispiel:

    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #include <ArrayMore.au3>

    [/autoit] [autoit][/autoit] [autoit]

    Global $aLabels[1][2]
    $aLabels[0][0] = 0

    [/autoit] [autoit][/autoit] [autoit]

    $Form1 = GUICreate("Form1", 117, 33, 192, 124)
    $_Label = _GuiCtrlLabel_Create(8, 8, 86, 17,"xDD", "_GUICTrlLabel_Msg")
    GUISetState()

    [/autoit] [autoit][/autoit] [autoit]

    Do
    $nMsg = GUIGetMsg()
    For $i = 0 To $aLabels[0][0]
    If $nMsg = $aLabels[$i][0] Then Call($aLabels[$i][1])
    Next
    Until $nMsg = $GUI_EVENT_CLOSE

    [/autoit] [autoit][/autoit] [autoit]

    Func _GuiCtrlLabel_Create($_LEFT,$_TOP,$_WIDTH,$_HEIGHT,$_Text, $sEvent)
    $aLabels[0][0] += 1
    _Array2DAdd($aLabels, GUICtrlCreateLabel($_Text,$_LEFT,$_TOP,$_WIDTH,$_HEIGHT) & "|" & $sEvent)
    EndFunc ;==>_GuiCtrlLabel_Create

    [/autoit] [autoit][/autoit] [autoit]

    Func _GUICTrlLabel_Msg()
    MsgBox(0,"","")
    EndFunc

    [/autoit]
  • Msg eines GUI Controls in einer funktion auserhalb der while schleife

    • name22
    • 20. Mai 2010 um 20:06

    Sobald du wieder den OnEvent Mode ausschaltest, wird auf keines deiner gesetzten Events mehr reagiert ;).
    Du könntest es beim MessageLoop Modus belassen und Arrays verwenden.

  • Zwei While scheleifen gleichzeitig ausfürhen.

    • name22
    • 20. Mai 2010 um 18:56
    Zitat

    Aber kann mir wer noch meine andere frage beantworten?


    Siehe vorheriger Beitrag, aber normalerweise kommt man auch ohne Multithreading aus. Kannst du uns vielleicht einen konkreten Zweck nennen? Für gewöhnlich reichen Adlib Funktionen völlig aus.

  • Zwei While scheleifen gleichzeitig ausfürhen.

    • name22
    • 20. Mai 2010 um 18:54

    Das wird nicht funktionieren Script-Bär...
    Dann hängt er doch immer in der 2ten While 1 Schleife fest ;).

    Zitat


    Mit einem skript will ich einen zweiten skript starten der sich im gleichem ordner befindet wie der erste


    Äh, Run bzw. ShellExecute? :rolleyes:

  • Statusleistenverknüpfung

    • name22
    • 20. Mai 2010 um 18:49
    Zitat

    Es gibt doch bestimmt eine Möglichkeit dem Programm zu sagen,
    'wenn auf einen Knopf gedrückt wird, füllt sich die Leiste'.
    Wär's möglich mir möglichst verständlich zu erklären wie das geht?


    Erstens ist Koda nur ein kleines Hilfs-Tool, dass dir die Positionierung von Controls in einer GUI erleichtern soll ;).
    Das ganze must du nachher schon selbst zum funktionieren bringen. :D
    Schau dir doch z.B. mal dieses Tutorial an.

  • Zwei While scheleifen gleichzeitig ausfürhen.

    • name22
    • 20. Mai 2010 um 18:31

    Das ist nicht möglich ;). AutoIt beherrscht kein Multithreading... Aber du kannst Adlib oder Timer Funktionen verwenden.

  • Benutzerwechsel

    • name22
    • 19. Mai 2010 um 21:32

    Willst du darauf hinaus, dass das ohne Passwort funktioniert?...

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™