Sammeltopic für kurze Codingfragen

Wir sammeln alle Infos der Bonusepisode von Pokémon Karmesin und Purpur für euch!

Zu der Infoseite von „Die Mo-Mo-Manie“
  • Hi ich versuche gerade mittles einer Batch Datei Musik von einem bestimmten Interpreten zu öffnen. Meine gesamte Musik ist nach Interpret in Ordner sortiert. Derzeit habe ich folgenden Code:


    Code
    @echo off
    set /p ordner="Interpret eingeben: "
    dir "C:\bla\Music\%ordner%\*.mp3" /b > C:\bla\Music\%ordner%\liste.m3u
    start C:\bla\Music\%ordner%\liste.m3u


    Ich gebe zu, dass ich mir diesen Code - da ich nicht viel Ahnung von Batch Dateien habe - via Google zurecht geborgen habe. Er hat allerdings noch zwei Makel, die ich versuche auszumerzen:


    1. Es werden nur MP3s abgespielt. Ist es möglich Dateien mit verschiedenen Endungen mit in die Liste zu übernehmen?


    2. Dateien, die sich in Unterverzeichnissen des jeweiligen Interpreten befinden werden ebenfalls nicht abgespielt. Lässt sich der Pfad so anpassen, dass sämtliche Dateien aus sämtlichen Unterverzeichnissen erfasst werden? Es ist allerdings nicht immer der Fall, dass Unterverzeichnisse existieren.

  • Erstell doch für das gewünschte Panel einen eigenen Mouse Listener und frag die Koordinaten einfach ab, wenn sich die Mouse im Panel befindet.


    und wie genau soll ich das machen?
    Wenn ich den Listener auf das Panel setze, wird das für mich relevante MouseEvent mouseDragged(MouseEvent evt) ja nicht ausgelöst,da es, wie ich einige Beiträge vorher ja bereits genannt hatte, immer zu dem Panel gehört, auf dem zuerst geklickt wurde.

  • das MouseMoved-Event wird nur ausgelöst, wenn keine Maustaste gedrückt ist. Da ich aber die Mausposition herausfinden will, während ich etwas dragge, geht das so nicht.


    e:// ich gucke mir gerade den source code der ganzen mouse-klassen an. Der MouseMotionListener ist ja ein Interface mit nur Methodenköpfen, das von EventListener erbt, was ebenfalls "leer" ist. Wo wird denn dann entschieden, welche Mouse-Methode aufgerufen wird? In MouseEvent habe ich das auch nicht gefunden (, die ganzen Superklassen habe ich mir nicht genau angeschaut...). Ich habe mir nämlich gedacht, dass ich ja theoretisch einfach überschreiben könnte, dass die MouseMoved-Methode immer aufgerufen wird, und nicht nur, wenn kein Button gedrückt ist. Dann wäre das mit den Koordinaten der Maus nämlich einfach rauszufinden.

  • Qayokm, könntest du vielleicht mal erklären, was du da eigentlich versuchst zu machen? Man merkt dir richtig an, dass du keine Ahnung davon hast, was du da eigentlich tust, von Java und der Programmierung sowieso nicht. Ich habe die letzten Posts zwar gelesen, aber ich versteh nix davon, weder eine mögliche Idee noch warum du das machst, was du machst. Ich habe beinahe das Gefühl, dass nicht die Umsetzung das Problem ist, sondern dass bereits das Design von Grund auf für die Katz ist.

  • Vielen Dank dass du auf Grund von ein paar Beiträgen denkst, ich hätte "keine Ahnung", besonders "von Java und der Programmierung sowieso nicht."
    Aber ich ignoriere diese unnötige Beleidung einfach mal und gehe auf deine Frage ein:
    Eigentlich ist es relativ simpel: Ich habe links eine Art Spielfeld mit Feldern, die Struktur dahinter ist ein zweidimensionales Array, wobei die eine Dimension quasi die x-Achse und die andere die y-Achse beschreibt. Rechts habe ich ein Panel, wo die Spielsteine drauf zu sehen sind, die ich dann per Drag & Drop (Mouse(Motion)Listener) ins Spielfeld ziehen kann. Da es sehr viele Spielsteine sind, habe ich das Panel in eine JScrollPane gepackt, sodass alle Spielsteine dargestellt werden. Das Drag & Drop lasse ich mir mit Hilfe der aktuellen Mausposition darstellen. Das viel erklärte Problem ist nun, wenn ich im rechten Teil nach unten scrolle, dann das Teil per Maus auswähle, gedrückt halte und das Teil ins Spielfeld ziehen will. Da durch das Scrollen nach unten die y-Position sehr hoch ist, und ich auch im Spielfeld das Teil per Drag & Drop und abhängig von der Mausposition anzeigen lasse, wird das Teil dann unterhalb des Spielfeldes gezeichnet und ich sehe es nicht. nur wenn ich die Maus weit über das Spielfeld ziehe, ist die y-Position irgendwann so niedrig, dass es im Spielfeld ist.


    Und nochmal:
    konstruktive Kritik: ja
    Beleidigungen: nein

  • Ich hab noch einmal eine JavaScript Frage.


    Und zwar geht es um folgendes.
    Ich möchte etwas auf meiner Homepage haben wo ich mehrere Punkte mit einer Checkbox habe. Jedem Punkt ist ein Wert zugeordnet. Die Summe der Werte soll in einem Feld angezeigt werden. Und ich krieg es nicht mehr auf die Reihe ^^"

  • Vielen Dank dass du auf Grund von ein paar Beiträgen denkst, ich hätte "keine Ahnung", besonders "von Java und der Programmierung sowieso nicht."
    Aber ich ignoriere diese unnötige Beleidung einfach mal und gehe auf deine Frage ein:
    Eigentlich ist es relativ simpel: Ich habe links eine Art Spielfeld mit Feldern, die Struktur dahinter ist ein zweidimensionales Array, wobei die eine Dimension quasi die x-Achse und die andere die y-Achse beschreibt. Rechts habe ich ein Panel, wo die Spielsteine drauf zu sehen sind, die ich dann per Drag & Drop (Mouse(Motion)Listener) ins Spielfeld ziehen kann. Da es sehr viele Spielsteine sind, habe ich das Panel in eine JScrollPane gepackt, sodass alle Spielsteine dargestellt werden. Das Drag & Drop lasse ich mir mit Hilfe der aktuellen Mausposition darstellen. Das viel erklärte Problem ist nun, wenn ich im rechten Teil nach unten scrolle, dann das Teil per Maus auswähle, gedrückt halte und das Teil ins Spielfeld ziehen will. Da durch das Scrollen nach unten die y-Position sehr hoch ist, und ich auch im Spielfeld das Teil per Drag & Drop und abhängig von der Mausposition anzeigen lasse, wird das Teil dann unterhalb des Spielfeldes gezeichnet und ich sehe es nicht. nur wenn ich die Maus weit über das Spielfeld ziehe, ist die y-Position irgendwann so niedrig, dass es im Spielfeld ist.


    Und nochmal:
    konstruktive Kritik: ja
    Beleidigungen: nein


    Ich hab erreicht, was ich wollte. Du hast endlich paar Infos ausgespuckt ^^
    Also hast du auf den Panels kein LayoutManager aktiv und arbeitest mit fixen Werten, so wie sich das anhört. Die Position müsstest du dann auch natürlich anpassen oder habe ich das auch wieder falsch verstanden?

  • Also ich habe verstanden, dass bei dir die Mausposition beim Draggen nicht passt (zu hoher y-Wert). Das kann aber eigentlich nicht sein. Wie holst du dir denn die Position? Ich habe mal selbst ein Beispiel gebastelt. In meinem Fall schieb ich nen Label rüber und das wird genau da positioniert, wo es auch soll.

  • Ich verschiebe ja nicht das gesamte jpanel, sondern nur etwas gezeichnetes. Dabei mache ich es aber nicht so, dass dieses gezeichnete als extra graphics objekt erstellt wird, sondern ich es nur auf das panel draufzeichne (mit graphics objekte würde mir ja auch nicht so viel bringen, weil ich dann die mausposition auf dem graphics objekt nur erhalten würde...)
    Dann scrolle ich auf dem rechte panel runter, sodass zum Beispiel y-position 100 des linken panels auf der höhe von y-position 200 des rechten panels ist. Wenn ich dann mit der maus auf das rechte panel an position 200 klicke und dann nach links ziehe, also auf höhe 100 des linken panels, denkt das programm trotzdem, dass ich auf y-position 200 sei, weil es abhängig vom panel, wo ich geklickt habe, also das rechte, ist.

  • Ja, genau das dachte ich mir schon. Du musst die Mausposition aber vom dem Zielpanel abfragen (zielPanel.getMousePosition() ). Dann bekommst du die Mausposition auf dem Zielpanel. Es ist völlig egal, wo die Maus auf dem Quellpanel war. Das Ziel ist von Interesse.

  • wenn du den Abstand bearbeiten willst, brauchst du padding und darüber musst du dann dem Abstand oben und unten einen identischen Wert zuweisen.

    CSS
    padding: 10px 0; /*10px = Abstand über und unter dem Element; 0 = Abstand links und rechts neben dem Element*/


    Das wäre aber btw Vertikal, horizontal ging über

    CSS
    text-align: center;
  • Hab eine ganz kurze, eigentlich billige Frage zu JavaScript, lerne grad mit codeacademy.
    Ist der befehel für den konsolen log so richtig?


    console.log("string");


    bei der prüfung wird der so nicht akzeptiert, is da was falsch?

    "I see now that the circumstances of one's birth are irrelevant. It is what you do with the gift of life that determines who you are."

    ~ Mewtwo