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. ProgrammingDonkey

Beiträge von ProgrammingDonkey

  • GUI / Label: Text bei Überlauf verkleinern

    • ProgrammingDonkey
    • 14. März 2015 um 18:48

    Hier ein Beispiel-Code:

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    Opt("GUIOnEventMode", True)

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

    $hGUI = GUICreate("Font test", 100, 75)
    $hGUILabel = GUICtrlCreateLabel("", 0, 0, 100, 25)
    GUICtrlSetFont(-1, 12)
    $hGUIInput = GUICtrlCreateInput("Auto", 0, 25, 100, 25)
    GUICtrlSetFont(-1, 12)
    $hGUIButton = GUICtrlCreateButton("Übernehmen", 0, 50, 100, 25)
    GUICtrlSetFont(-1, 12)
    GUICtrlSetOnEvent(-1, "_CopyText")
    GUISetOnEvent($GUI_EVENT_CLOSE, "_Exit")
    GUISetState()

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

    _CopyText()

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

    While 1
    sleep(500)
    WEnd

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

    Func _CopyText()
    GUICtrlSetData($hGUILabel, GUICtrlRead($hGUIInput))
    EndFunc

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

    Func _Exit()
    Exit
    EndFunc

    [/autoit]


    Wie verändere ich dieses Code, um meinen Text innerhalb des Labels ($hGUILabel) zu verkleinern, sobald dieser sonst in die zweite Zeile reicht?
    [ Um zu zeigen was ich meine: Gibt in das Input mal "Dieser Text ist zu lang" ein, und drückt "Übernehmen" ]

    Danke

  • MusikPlayer mit Equalizer,Playlist, etc.

    • ProgrammingDonkey
    • 14. März 2015 um 16:48

    @Raupi
    Ohne hiermit innerhalb eines Threads direkt eine Diskussion anfangen zu wollen:
    Ich habe nie gesagt, dass meiner besser ist, oder in irgendeinem Punkt damit angegeben; Kanashius Player bietet sogar mehr Funktionen. Allerdings ist mein Player simpler und Nutzer-freundlicher.

  • GUICtrlCreateLabel verschluckt das &-Zeichen

    • ProgrammingDonkey
    • 14. März 2015 um 15:28

    Ich habe zu dem Quellcode mal kurz eine Frage. das "h" bei $hGUI - steht das für "handle" oder für "hex"? Denn die Handles sind soweit ich weiß in Hex angegeben..

  • BeatIt - [Music Player mit Equalizer, CrossfadeEx, ...]

    • ProgrammingDonkey
    • 14. März 2015 um 15:25

    Ich habe das Topic oben jetzt mal deutlich verändert :D

  • MusikPlayer mit Equalizer,Playlist, etc.

    • ProgrammingDonkey
    • 14. März 2015 um 15:14

    Da dieser Player auf meinem aufbaut fühle ich mich berechtigt, hier etwas Werbung einzubauen :P
    Wem dieser Player zu komplex / aufwändig ist, und wer mehr Wert auf Sound-Qualität als auf Streams etc. legt, der kann sich meinen mittlerweile weit fortgeschrittenen Player angucken: BeatIt - [Music Player mit Equalizer, CrossfadeEx, ...]

  • ALTGR per send senden?

    • ProgrammingDonkey
    • 13. März 2015 um 14:24

    Sonst kannst du jeweilige Funktion (angenommen, es ist kein Trainer usw.) eventuell auch anders hervorrufen. Falls es in jeweiligen Programm auch einen Button gibt, kannst du diesen per ControlClick() auswählen...

  • BeatIt - [Music Player mit Equalizer, CrossfadeEx, ...]

    • ProgrammingDonkey
    • 13. März 2015 um 14:19

    Ich werde nun beginnen, das Fenster aus dem Fullscreen-Modus zu holen, und resizable zu machen.
    EDIT: Die neue Version beinhaltet dies noch nicht, ich habe allerdings endlich eine Songsuche eingebaut :)

  • BeatIt - [Music Player mit Equalizer, CrossfadeEx, ...]

    • ProgrammingDonkey
    • 10. März 2015 um 22:36

    PS: Es ist da.
    Es gibt immernoch Bugs, wenn ihr welche finden solltet, bitte meldet sie mir, und den Moment, in dem sie aufgetreten sind.

  • BeatIt - [Music Player mit Equalizer, CrossfadeEx, ...]

    • ProgrammingDonkey
    • 9. März 2015 um 00:34

    Habe das Problem jetzt etwas anders gelöst; Dennoch danke.
    Das Update kommt verzögert, da ich nochmal auf Bugjagt gehe ^^

  • BeatIt - [Music Player mit Equalizer, CrossfadeEx, ...]

    • ProgrammingDonkey
    • 7. März 2015 um 21:42

    Wenn ihr das nächste Update (mit grafisch deutlich verbessertem EQ und CrossfadeEQ) schneller haben wollt, dann sagt mir, warum die MsgBox mehrfach aufgerufen wird:

    [autoit]

    Dim $ABC[2][2]

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

    Dim $ABCD[2][2]

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

    $ABCD[0][0] = 1

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

    $ABCD[0][1] = 2

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

    $ABCD[1][0] = 3

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

    $ABCD[1][1] = 4

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

    While 1

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

    If $ABC <> $ABCD Then

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

    $ABC = $ABCD

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

    MsgBox(0,0,0)

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

    EndIf

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

    WEnd

    [/autoit][autoit][/autoit][autoit][/autoit]
  • MusikPlayer mit Equalizer,Playlist, etc.

    • ProgrammingDonkey
    • 7. März 2015 um 21:02

    Diese Einstellungen bietet mein Player größtenteils; Und dort nicht wegen dem optischen EQ ärgern, der neue mit Slidern ist schon fertig, und wird gerade mit Crossfade zum Geequalizeden bearbeitet :D

  • GUIScrollBars_Ex Massenproduktions Problem (Bug?)

    • ProgrammingDonkey
    • 6. März 2015 um 18:05

    Problem damit gelöst; Danke :D

  • MusikPlayer mit Equalizer,Playlist, etc.

    • ProgrammingDonkey
    • 6. März 2015 um 16:35

    Gefällt mir, die Änderung :)
    Somit machst du deinen Player anspruchsvoller und aufwendiger, und ich meinen immer simpler und freiräumiger.
    Somit haben wir verschiedene Leitfäden, und ich keine direkte Konkurenz mehr :D

  • GUIScrollBars_Ex Massenproduktions Problem (Bug?)

    • ProgrammingDonkey
    • 6. März 2015 um 15:59

    Erstmal mein Code:

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    #include <GUIScrollbars_Ex.au3>
    #include <Array.au3>
    Opt("GUIOnEventMode", True)
    Global $hGUIEQItemInput[0], $hGUIEQItemSlider[0], $MainGui_Width = @DesktopWidth, $MainGui_Height = @DesktopHeight

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

    $hGUIEQ = GUICreate("EQTest", GUIx(105), GUIy(660))
    $hGUIEQContext = GUICtrlCreateContextMenu()
    $hGUIEQContextAdd = GUICtrlCreateMenuItem("Add Frequency", $hGUIEQContext)
    GUICtrlSetOnEvent(-1, "EQAddFreq")
    GUISetOnEvent($GUI_EVENT_CLOSE, "_Exit")
    GUISetState()
    _GUIScrollBars_Generate($hGUIEQ, 0, GUIy(5))
    for $i = 0 to 99 step +1
    EQAddFreq()
    Next
    While 1
    ;ConsoleWrite(_GUIScrollBars_Locate_Ctrl($hGUIEQ, 0, 0)[1]&@CRLF)
    WEnd

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

    Func _Exit()
    Exit
    EndFunc

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

    Func EQAddFreq()
    _ArrayAdd($hGUIEQItemInput, GUICtrlCreateInput("0", GUIx(5), GUIy(5)+UBound($hGUIEQItemInput)*GUIy(50), GUIx(30), GUIy(40)))
    _ArrayAdd($hGUIEQItemSlider, GUICtrlCreateSlider(GUIx(5+30), GUIy(5)+UBound($hGUIEQItemInput)*GUIy(50), GUIx(60), GUIy(40), $TBS_HORZ))
    $ScrollHeight = GUIy(5+UBound($hGUIEQItemInput)*50)
    _GUIScrollBars_Generate($hGUIEQ, 0, $ScrollHeight)
    for $i = 0 to UBound($hGUIEQItemInput)-1 step +1
    GUICtrlSetPos($hGUIEQItemInput[$i], GUIx(5), _GUIScrollBars_Locate_Ctrl($hGUIEQ, 0, 0)[1]+GUIy(5+$i*50))
    GUICtrlSetPos($hGUIEQItemSlider[$i], GUIx(5+30+5), _GUIScrollBars_Locate_Ctrl($hGUIEQ, 0, 0)[1]+GUIy(5+$i*50))
    Next
    EndFunc
    #cs
    Func EQSortFreqs()
    Local $aHelpList [UBound($hGUIEQItemInput)][2]
    for $i = 0 to UBound($hGUIEQItemInput)-1 step +1
    $aHelpList[$i] = $hGUIEQItemInput[$i]
    EndFunc
    #ce
    Func GUIx($Number)
    return $MainGui_Width/1000*$Number
    EndFunc

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

    Func GUIy($Number)
    return $MainGui_Height/1000*$Number
    EndFunc

    [/autoit]


    Mein Problem: Wenn ich die 100 "Gruppen" erstelle, dann fangen diese an, mit zunehmender Zahl immer breiter zu werden, und erst am Ende haben sie dann die gewünschte Größe. (<- So war es am Anfang (siehe Bild1)) Und nun ist dieser Verlauf nicht mehr so deutlich sichtbar:

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    #include <GUIScrollbars_Ex.au3>
    #include <Array.au3>
    Opt("GUIOnEventMode", True)
    Global $hGUIEQItemInput[0], $hGUIEQItemSlider[0], $MainGui_Width = @DesktopWidth, $MainGui_Height = @DesktopHeight

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

    $hGUIEQ = GUICreate("EQTest", GUIx(105), GUIy(660))
    $hGUIEQContext = GUICtrlCreateContextMenu()
    $hGUIEQContextAdd = GUICtrlCreateMenuItem("Add Frequency", $hGUIEQContext)
    GUICtrlSetOnEvent(-1, "EQAddFreq")
    GUISetOnEvent($GUI_EVENT_CLOSE, "_Exit")
    GUISetState()
    _GUIScrollBars_Generate($hGUIEQ, 0, GUIy(5))
    for $i = 0 to 99 step +1
    EQAddFreq()
    Next
    While 1
    ;ConsoleWrite(_GUIScrollBars_Locate_Ctrl($hGUIEQ, 0, 0)[1]&@CRLF)
    WEnd

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

    Func _Exit()
    Exit
    EndFunc

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

    Func EQAddFreq()
    _ArrayAdd($hGUIEQItemInput, GUICtrlCreateInput("0", GUIx(5), GUIy(5)+UBound($hGUIEQItemInput)*GUIy(50), GUIx(30), GUIy(40)))
    _ArrayAdd($hGUIEQItemSlider, GUICtrlCreateSlider(GUIx(5+30), GUIy(5)+UBound($hGUIEQItemInput)*GUIy(50), GUIx(60), GUIy(40), $TBS_HORZ))
    $ScrollHeight = GUIy(5+UBound($hGUIEQItemInput)*50)
    _GUIScrollBars_Generate($hGUIEQ, 0, $ScrollHeight)
    for $i = 0 to UBound($hGUIEQItemInput)-1 step +1
    GUICtrlSetPos($hGUIEQItemInput[$i], GUIx(5), _GUIScrollBars_Locate_Ctrl($hGUIEQ, 0, 0)[1]+GUIy(5+$i*50), GUIx(30), GUIy(40))
    GUICtrlSetPos($hGUIEQItemSlider[$i], GUIx(5+30+5), _GUIScrollBars_Locate_Ctrl($hGUIEQ, 0, 0)[1]+GUIy(5+$i*50), GUIx(60), GUIy(40))
    Next
    EndFunc
    #cs
    Func EQSortFreqs()
    Local $aHelpList [UBound($hGUIEQItemInput)][2]
    for $i = 0 to UBound($hGUIEQItemInput)-1 step +1
    $aHelpList[$i] = $hGUIEQItemInput[$i]
    EndFunc
    #ce
    Func GUIx($Number)
    return $MainGui_Width/1000*$Number
    EndFunc

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

    Func GUIy($Number)
    return $MainGui_Height/1000*$Number
    EndFunc

    [/autoit]


    Allerdings immernoch vorhanden. (<- siehe Bild2)
    Meine Frage ist: Warum passiert das? Wie behebe ich meinen Fehler?

  • Problem mit GUIScrollbars_Ex

    • ProgrammingDonkey
    • 5. März 2015 um 22:41

    GUIScrollbars_Ex meinte ich; korrigiert. Sorry :/

  • Problem mit GUIScrollbars_Ex

    • ProgrammingDonkey
    • 5. März 2015 um 21:31

    Hier erstmal mein Code:

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    #include <GUIScrollbars_Ex.au3>
    #include <Array.au3>
    Opt("GUIOnEventMode", True)
    Global $hGUIEQItemInput[0], $hGUIEQItemSlider[0], $MainGui_Width = @DesktopWidth, $MainGui_Height = @DesktopHeight

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

    $hGUIEQ = GUICreate("EQTest", GUIx(105), GUIy(660))
    $hGUIEQContext = GUICtrlCreateContextMenu()
    $hGUIEQContextAdd = GUICtrlCreateMenuItem("Add Frequency", $hGUIEQContext)
    GUICtrlSetOnEvent(-1, "AddFreq")
    GUISetOnEvent($GUI_EVENT_CLOSE, "_Exit")
    GUISetState()
    _GUIScrollBars_Generate($hGUIEQ, 0, GUIy(5))
    for $i = 0 to 10 step +1
    AddFreq()
    Next
    While 1
    ;ConsoleWrite(_GUIScrollBars_Locate_Ctrl($hGUIEQ, 0, 0)[1]&@CRLF)
    WEnd

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

    Func _Exit()
    Exit
    EndFunc

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

    Func AddFreq()
    _ArrayAdd($hGUIEQItemInput, GUICtrlCreateInput("0", 5, GUIx(5)+UBound($hGUIEQItemInput)*GUIy(50), GUIx(30), GUIy(40)))
    $ScrollHeight = GUIy(5+UBound($hGUIEQItemInput)*50)
    _GUIScrollBars_Generate($hGUIEQ, 0, $ScrollHeight)
    EndFunc

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

    Func GUIx($Number)
    return $MainGui_Width/1000*$Number
    EndFunc

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

    Func GUIy($Number)
    return $MainGui_Height/1000*$Number
    EndFunc

    [/autoit]


    Mein Problem:
    Wenn ich Einstellungen hinzufüge (Rechtsklick, [Add Frequency]) dann tauchen die wie gewünscht unten auf, und lassen sich scrollen sobald möglich. Wenn ich allerdings runterscrolle, und dann Einstellungen hinzufüge, erscheint beim hochscrollen ein freier Rand. Wenn ihr mich nicht ganz versteht, probiert es bitte einfach aus.
    Meine Frage:
    Wie behebe ich das Problem?

    [GELÖST]Ich habe mein Problem nun selber gelöst, indem ich die AddFreq() Funktion verändert habe:

    [autoit]

    Func AddFreq()
    _ArrayAdd($hGUIEQItemInput, GUICtrlCreateInput("0", 5, GUIx(5)+UBound($hGUIEQItemInput)*GUIy(50), GUIx(30), GUIy(40)))
    $ScrollHeight = GUIy(5+UBound($hGUIEQItemInput)*50)
    _GUIScrollBars_Generate($hGUIEQ, 0, $ScrollHeight)
    for $i = 0 to UBound($hGUIEQItemInput)-1 step +1
    GUICtrlSetPos($hGUIEQItemInput[$i], GUIx(5), _GUIScrollBars_Locate_Ctrl($hGUIEQ, 0, 0)[1]+GUIy(5+$i*50))
    Next
    EndFunc

    [/autoit]


    Da das ganze allerdings immernoch nicht soo wunderschön ist, nehme ich immernoch gerne Vorschläge an :)

  • BeatIt - [Music Player mit Equalizer, CrossfadeEx, ...]

    • ProgrammingDonkey
    • 5. März 2015 um 17:17

    Ok. Die Passwort-Funktion wird nun hinzugefügt, und ich versuche erneut, meinen EQ grafisch und technisch zu verbessern ;)

  • _RunDos mit erhöhten Rechten ausführen

    • ProgrammingDonkey
    • 4. März 2015 um 21:25

    Wenn du nicht schreibst wie, kannste den Thread auch löschen; Ich nehme an, du hast #RequireAdmin an den Anfang des Scriptes geschrieben?

  • BeatIt - [Music Player mit Equalizer, CrossfadeEx, ...]

    • ProgrammingDonkey
    • 4. März 2015 um 19:18

    @chip Für ein AlbumCover ist leider nicht genügend Platz im GUI / Ich setze den Platz lieber für praktische Sachen ein.
    @turbobaby Ich konnte die Wartezeit leider nicht verkürzen :(, werde nun aber mit den restlichen Ideen weiterarbeiten.

  • BeatIt - [Music Player mit Equalizer, CrossfadeEx, ...]

    • ProgrammingDonkey
    • 4. März 2015 um 18:05

    Die Passwort Idee passt zwar nicht zu einem MusicPlayer, aber lässt sich ntürlich einbauen.
    FullScreen Toggle müsste eigentlich ganz simpel gehen; (Ich gucke mal..)
    Auswahl der Soundkarten kann ich mir nur angucken; Die hatte Kanashius eingebaut
    Das streamen wird hier leider nicht ermöglicht werden können..
    Bei der Dateianalyse gucke ich mal, ob ich den Prozess kürzen kann ;)
    Jedenfalls danke für die konstruktive Kritik :)

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™