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

  • Desktopplatz "reservieren"

    • name22
    • 20. Oktober 2011 um 19:06
    Zitat

    Wenn ich auf maximieren klicke, dann soll das maximierte fenster nicht unter meinem sein, sondern so verschoben werden, dass es das nicht ist


    Überleg dir noch mal ganz genau, was du da von uns verlangst... Ein maximiertes Fenster nimmt den gesamten Desktop ein, und jetzt willst du alle Fenster so platzieren, dass sie auch Platz haben? :huh:

  • Desktopplatz "reservieren"

    • name22
    • 20. Oktober 2011 um 18:56
    Zitat

    Vieleich weißt du ja jetzt was ich meine


    Nein ^^. Ich hab kein ICQ, und dessen scheinbar sinnloses Verhalten kann ich mir auch nicht wirklich vorstellen.

  • Desktopplatz "reservieren"

    • name22
    • 20. Oktober 2011 um 18:49
    Zitat

    Wie kann ich machen dass man das Fenster nicht fokussieren kann?


    Das erscheint mir ein wenig sinnlos... Oder meinst du so etwas, wie

    [autoit]

    GUISetState(@SW_DISABLE, $hWnd)

    [/autoit]

    ?

  • Desktopplatz "reservieren"

    • name22
    • 20. Oktober 2011 um 18:45

    Ich hab Windows 7, und bei mir können die Fenster unter der Taskbar rumrutschen so viel sie wollen. Ich verstehe zwar was du meinst, aber mir fällt auf Anhieb keine leicht umsetzbare Lösung ein. Alle Fenster mit WinList und WinGetPos zu überprüfen dauert vermutlich zu lange. Allerdings fände ich persönlich ein sich so verhaltendes Fenster ziemlich lästig....

  • Desktopplatz "reservieren"

    • name22
    • 20. Oktober 2011 um 18:40

    Drück dich deutlicher aus. Wenn das Fenster immer im Vordergrund ist, kann es auch nicht von anderen überdeckt werden. ;)

  • Desktopplatz "reservieren"

    • name22
    • 20. Oktober 2011 um 18:37

    Meinst du, dass das Fenster immer im Vordergrund bleibt? Das geht unter anderem mit

    [autoit]

    WinSetOnTop

    [/autoit]

    , oder auch mit dem Stil $WS_EX_TOPMOST.

  • Der Gaming-Thread (nur für Freaks)

    • name22
    • 20. Oktober 2011 um 18:27
    Zitat

    und 2k11 :D :D


    2011? Das zock ich zurzeit auch, ich bin gerade bei der 20ten Mission des 10ten Kapitels. :P
    Ich zock Halo: Reach abundzu noch im Singleplayer, aber zum online zocken hab ich nicht so viel Lust zur Zeit. Dann natürlich noch Supreme Commander: Forged Alliance :D.

  • Laufwerksbuchstaben ausgeben

    • name22
    • 17. Oktober 2011 um 21:59

    Und wie das geht steht in der Hilfe und sogar im Tutorial. Von den ganzen Beispielen in diesem Forum und im restlichen Internet mal abgesehen. Wo brauchst du denn jetzt Hilfe?

  • Laufwerksbuchstaben ausgeben

    • name22
    • 17. Oktober 2011 um 21:43
    [autoit]

    DriveGetDrive

    [/autoit]


    ;)

  • Probleme mit Scrollbalken: Steuerelemente werden verschoben und GDI+-Grafik verschwindet

    • name22
    • 17. Oktober 2011 um 21:13

    Ja. Allerdings würde ich die Punkte des Graphen einmal berechnen, in einem Array abspeichern und bei jeder Verschiebung vor dem zeichnen einfach immer einen bestimmten Wert addieren/subtrahieren. Also so dass der Wert im Array gleich bleibt. Außerdem würde ich noch einen Doppelbuffer einbauen, um das flackern bei Zeichenvorgängen zu minimieren und damit man nicht bei jedem Zeichenvorgang alles neuberechnen/-zeichnen muss sondern nur eine Bitmap auf die Grafik malt. Das ganze kannst du dir auch in Ubuntus GDI+ Tutorial anschauen.

  • Probleme mit Scrollbalken: Steuerelemente werden verschoben und GDI+-Grafik verschwindet

    • name22
    • 17. Oktober 2011 um 21:03

    Ja. Man muss nur die Koordinaten entsprechend dem Mauszeiger verschieben und dann neuzeichnen.

  • Probleme mit Scrollbalken: Steuerelemente werden verschoben und GDI+-Grafik verschwindet

    • name22
    • 17. Oktober 2011 um 20:59
    Zitat

    Das Problem ist, dass ich in meinem eigentlichen Programm keine Linie, sondern einen Graphen zeichnen lasse, der nicht periodisch ist, d. h. ich müsste die Werte sozusagen rückwärts, dem Scrollen entsprechend, wieder zeichnen.


    Ach so... Dann wäre es vermutlich wirklich einfacher, das komplett über GDI+ zu regeln (was den Graphen betrifft). Der Scrollbalken wäre ja nur für die restlichen Controls entscheidend, und die sollen in deinem Fall ja sowieso am Platz bleiben.
    Am sinnvollsten für eine Grafik, die eine 2-dimensionale Ausdehung hat, halte ich das ziehen der Grafik per Cursor. Dann müsste die Mausposition beim betätigen der linken Maustaste ständig abgefragt werden, und alle Koordinaten der GDI+ Elemente entsprechend verschoben werden. Dann wird alles mit den angepassten Positionen neugezeichnet.

  • Probleme mit Scrollbalken: Steuerelemente werden verschoben und GDI+-Grafik verschwindet

    • name22
    • 17. Oktober 2011 um 20:41

    Zu deinem ersten Problem habe ich leider keine saubere Lösung. Eventuell spuckt die Forensuche ja etwas aus, oder ein anderer weiß mehr dazu.
    Dein zweites Problem habe ich so gelöst (hoffentlich):

    Spoiler anzeigen
    [autoit]

    #include-once
    #include <GDIPlus.au3>
    #include <GUIConstants.au3>
    #include <GUIScrollbars.au3>
    #include <ScrollBarConstants.au3>
    #include <WindowsConstants.au3>

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

    Opt("GUIOnEventMode", 1)

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

    Global $x1 = 0, $x2 = 600, $xScroll

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

    HotKeySet("{LEFT}", "_Scrollen")
    HotKeySet("{RIGHT}", "_Scrollen")

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

    $Fenster = GUICreate("Fenster zu Testzwecken", 500, 500, Default, Default, BitOR(Default, $WS_HSCROLL))
    $Button1 = GUICtrlCreateButton("Zeichnen", 0, 0, 75, 25)
    GUICtrlSetOnEvent(-1, "_Zeichnen")
    GUISetOnEvent($GUI_EVENT_CLOSE, "_Beenden")
    GUISetOnEvent($GUI_EVENT_RESTORE, "_Zeichnen") ;Zeichnet die Linie bei Wiederherstellung des Fensters (nach Minimierung) neu.
    GUISetState()

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

    _GUIScrollBars_Init($Fenster)
    _GUIScrollBars_ShowScrollBar($Fenster, $SB_VERT, False)
    _GUIScrollBars_SetScrollRange($Fenster, $SB_HORZ, 0, 100)
    _GUIScrollBars_SetScrollInfoPage($Fenster, $SB_HORZ, 5)
    GUIRegisterMsg($WM_HSCROLL, "_SystemScrollen")
    GUIRegisterMsg($WM_VSCROLL, "_SystemScrollen")
    GUIRegisterMsg($WM_PAINT, "_Zeichnen") ;Zeichnet die Linie nach einer Überdeckung durch ein anderes Fenster oder einem Verschieben des Fensters aus dem Arbeitsbereich etc. neu.

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

    _GDIPlus_Startup()

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

    $Grafik = _GDIPlus_GraphicsCreateFromHWND($Fenster)
    $Stift = _GDIPlus_PenCreate(0xFF000000, 5)

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

    _Zeichnen ()

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

    Do
    Until GUIGetMsg() = -3

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

    Func _Zeichnen ()
    _GDIPlus_GraphicsDrawLine($Grafik, $x1, 250, $x2, 250, $Stift)
    EndFunc

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

    Func _Scrollen ()
    $xScroll = 0
    Switch @HotKeyPressed
    Case "{LEFT}"
    If $x1+$xScroll > 0 Then $xScroll -= 10
    Case "{RIGHT}"
    $xScroll +=10
    EndSwitch
    _GUIScrollBars_ScrollWindow($Fenster, $xScroll, 0)
    $x1 += $xScroll
    $x2 += $xScroll
    EndFunc

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

    Func _SystemScrollen ($hWndGUI, $MsgID, $WParam, $LParam)
    _GUIScrollBars_SetScrollInfoPos($Fenster, $SB_HORZ, _GUIScrollBars_GetScrollInfoTrackPos($Fenster, $SB_HORZ))
    $x1 += $WParam
    $x2 += $WParam
    _Zeichnen()
    EndFunc

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

    Func _Beenden ()
    _GDIPlus_PenDispose($Stift)
    _GDIPlus_GraphicsDispose($Grafik)
    _GDIPlus_Shutdown()
    Exit
    EndFunc

    [/autoit]


    Allerdings ist diese Lösung auch nicht so wirklich optimal (finde ich zumindest). An deiner Stelle, würde ich die Controls und GDI+ klar trennen, also z.B. so. Den Scrollbalken könnte man auch mit GDI+ zeichnen, oder ganz weglassen und durch eine kleine Funktion ersetzen, die es ermöglicht die Grafik per Maus zu "ziehen".

  • Funktion geht nicht hilfe...

    • name22
    • 16. Oktober 2011 um 22:22

    Geh doch den Code mal Stück für Stück durch und überlege dir was dort passiert (du kannst dir ja sogar kommentare dahinter schreiben). Wenn du etwas nicht verstehst, dann kannst du in der Hilfe nachschauen und in den meisten Fällen ist dort alles beschrieben und sogar noch ein Beispiel vorhanden (und dann gibt es ja auch noch die Forensuche und Google). Wenn du dann immer noch ein Problem hast, dann schilderst du uns das bitte möglichst detailliert und am besten mit ausfürhrbarem Code dabei.

  • Fenster maximieren

    • name22
    • 16. Oktober 2011 um 18:28

    Das stimmt aber nicht so ganz...

    Zitat von button421 - Skype 17:31

    $GUI = GUICreate("""-"" Kein Status - Microcontroller Simulator 2.0 by button421", 1024, 718, 194, 116, BitOr($GUI_SS_DEFAULT_GUI,$WS_MAXIMIZEBOX)) ;Die Hauptgui


    Wo ist hier bitte $WS_MAXIMIZE? Ich hab dir danach als Vorschlag eine Stil Kombination geschickt wo der enthalten war. Dass die GUI mit dem Stil $WS_MAXIMIZE maximiert ist weiß ich auch :rolleyes: ...

  • Function alle X Sekunden ausführen

    • name22
    • 16. Oktober 2011 um 16:33
    Zitat

    Function alle X Sekunden ausführen

    Zitat

    Ich möchte, das ein Script alle X Sekunden ausgeführt wird


    ...
    Ich gehe jetzt mal davon aus, dass die Überschrift korrekt ist. Also ->

    [autoit]

    AdlibRegister

    [/autoit]
  • [Beta] Silkroad - valentine level 90 GAP (China only !)

    • name22
    • 15. Oktober 2011 um 14:53
    Zitat

    Ich war mir auch nicht sicher, ob ich sowas hier posten darf ^^


    Du hättest auch einfach vorher fragen können :rolleyes: ...
    Ich glaube nicht, dass das in unserem Forum etwas verloren hat, da private Silkroad Server nunmal (leider) nicht erlaubt sind.

    Zitat von Foregregeln

    Mit dem Vollenden der Registrierung erklärst du dich damit einverstanden, diese Website nicht für Obszönitäten, Vulgäres, Beleidigungen, Propaganda (extremer) politischer Ansichten oder (verbaler) Verstöße gegen das Gesetz zu missbrauchen.

  • [Beta] Silkroad - valentine level 90 GAP (China only !)

    • name22
    • 15. Oktober 2011 um 14:46

    Ich bin nicht so der MMOPRG Crack geschweige denn ein Silkroad 1337. Aber das sieht mir doch stark nach einem privaten Server aus. Oder irre ich mich, da? ?(

  • Anfängerfrage: Auslesen und Reinschreiben in .txt funktioniert nicht

    • name22
    • 14. Oktober 2011 um 20:55

    Modus 1 bei FileOpen ist nicht Lese und Schreibmodus, sondern nur Schreibmodus. Du kannst dann nichts daraus auslesen.

  • GDI+ Bilder übereinander legen?

    • name22
    • 14. Oktober 2011 um 17:54
    Zitat

    helfen (über skype?)


    Evtl.... In meinem Profil ist mein Skype Name drin. Wieso würde das in diesem Thread nicht gehen? Oder hast du absolut keine Idee wie du das anfangen könntest?

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™