Darstellungfehler von N-Tolen bei Taktart-Änderung führt teilweise zu Absturz
Hallo,
mir scheint ein Darstellungsfehler aufgefallen zu sein, welcher jedoch nur in Auszügen vorkommt, welche schon bestehen.
Nach dem Einfügen einer Taktart-Änderung zwischen schon notierten Noten ändern sich die Darstellung aller N-Tolen nach der Taktart-Änderung. Hierbei ist es egal, ob die Änderung in der Gesamtpartitur oder in bestehenden Auszügen vorgenommen wird.
Die veränderte Darstellung der N-Tolen besteht darin, das die Klammern und Zahlen der N-Tolen nach der Takt-Änderung wirr über das ganze Blatt verteilt sind oder gar nicht mehr sichtbar in der Seitenansicht sind.
Anbei ist ein Bild, da Speichern so nicht möglich ist (siehe Woarkaround 2)
Ein Versuch die wirr verteilten N-Tolen-Klammern und Zahlen in den Auszügen manuell wieder auszurichten, führt zu einen eigenartigen Darstellung des Partitur-Blattes in der Seitenansicht. Dies zeigt sich darin, das bei den Auszugstabs der Auszug mit den wirren N-Tolen ausgewählt ist aber das Notenblatt die Gesamtpartitur anzeigt. Wenn dieser Punkt erreicht ist, führt ein Schließen der Partitur zum Absturz von Musescore.
Anbei ist auch eine vorbereitete Datei, wo ab Takt 29 ein Duplizierung der Takte 1 bis 28 (verschiedene N-Tolen) schon vorgenommen ist. Eine Taktart-Änderung in Takt 29 zeigt somit einen Vergleich und auch das erwähnte Verhalten.
Es gibt auch schon 2 Workarounds, die mir aufgefallen sind.
1. Workaround
Alle Auszüge löschen und dann nur in der Gesamtpartitur die Taktart-Änderung vornehmen. Nun alle Auszüge erstellen.
Ergebnis: Alle N-Tolen haben ihre normale Gestalt. Aber vorherigen manuelle Formatierungen in Auszügen gehen verloren.
- Workaround
Taktart-Wechsel einfügen und Datei speichern.
Problem hierbei ist mindestens bei mir, das Musescore 3.6.2 abstürzt. Aber nach neuem öffnen von Musescore und der Datei sind sowohl die manuellen Formatierung sowie die Dartsellung der N-Tolen so wie gewünscht.
Ich habe im Issue Tracker leider nichts gefunden, da mein Englisch leider nicht sehr gut ist und war auch selber leider nicht in der Lage das dort so ausführlich darzulegen.
Deshalb wählte ich diesen Weg auch wenn es wahrscheinlich nicht der optimalste ist.
Attachment | Size |
---|---|
Auszug_Taktartwechsel_N-Tolen_Problematik.mscz | 26.27 KB |
Comments
Ich kann den Crash nicht bestätigen. Den Rest aber schon
In reply to Ich kann den Crash nicht… by Jojo-Schmitz
Erstmal sorry für die späte Rückmeldung auf die schnelle Antwort.
Den Crash bei dem 2. Workaround lässt sich von mir in meiner Vorlage-Datei auch nicht mehr reproduzieren.
Aber der Crash beim Versuch des manuellen Ausrichtens per Inspekteur führt bei mir immer noch zum Crash.
Hier mal meine Vorgehensweise von mir im Detail, da die vorhergehende doch recht allgemein war.
1. "Auszug_Taktartwechsel_N-Tolen_Problematik.mscz"-Datei öffnen
2. einfügen der Taktart alla breve in Takt 29 der Gesamtpartitur
3. Wechsel in den Auszugs-Tab "Flöte 1"
Ergebnis: nach Takt 29 alle N-Tolen-Darstellungen wirr über des Blatt verteilt oder verschwunden
4. anklicken einer "wirren" N-Tolen-Zahl auf Blatt 2 des Auszugstab "Flöte 1"
Ergebnis: automatisches Springen auf Gesamtpartitur-Blatts aber Auswahl des Auszugs-Flöte 1 bleibt bestehen
5. Schließen der Partitur über das "X" des Partitur-Tabs und in der aufploppenden Speicher-Aufforderung auf "Speichern"
Ergebnis: Partitur bleibt bestehen und sichtbar. Palette, Wiedergabe-Steuerung, Noten-Eingabe etc. ergrauen.
6. Ein weiterer Klick auf das "X" des Partitur-Tabs ,der weiterhin eigentlich geschlossen Partitur, führt bei mir zum Absturz
Hoffe das hilft bei doch bestehenden Problemen bzw. zeigt mir auf, dass der Fehler nur bei mir und meinem Systm auftritt
In reply to Erstmal sorry für die späte… by Crifon
Autsch!
Stack Trace:
1 Ms::Score::masterScore score.h 1074 0x103375c
2 Ms::Seq::setScoreView seq.cpp 222 0x471b65
3 Ms::MuseScore::setCurrentScoreView musescore.cpp 2691 0x41a3ec
4 Ms::ScoreView::focusInEvent events.cpp 241 0x670bf3
5 QWidget::event(QEvent *) 0x323a4173
6 Ms::ScoreView::event events.cpp 106 0x670096
7 QApplicationPrivate::notify_helper(QObject *, QEvent *) 0x3236790e
8 QApplication::notify(QObject *, QEvent *) 0x3236e3e3
9 QCoreApplication::sendEvent(QObject *, QEvent *) 0x68a65da8
10 QApplicationPrivate::setFocusWidget(QWidget *, Qt::FocusReason) 0x3236bd4d
11 QWidget::setFocus(Qt::FocusReason) [clone .part.301] 0x3239d9da
12 QWidget::setFocus qwidget.h 420 0xfd290e
13 Ms::ScoreView::event events.cpp 99 0x67007c
14 QApplicationPrivate::notify_helper(QObject *, QEvent *) 0x3236790e
15 QApplication::notify(QObject *, QEvent *) 0x3236f1ea
16 QCoreApplication::sendSpontaneousEvent(QObject *, QEvent *) 0x68a65f78
17 QApplicationPrivate::sendMouseEvent(QWidget *, QMouseEvent *, QWidget *, QWidget *, QWidget * *, QPointer&, bool, bool) 0x3236d83b
18 QWidgetWindow::handleMouseEvent(QMouseEvent *) 0x323b9962
19 QWidgetWindow::event(QEvent *) 0x323bcc06
20 QApplicationPrivate::notify_helper(QObject *, QEvent *) 0x3236790e
...
In reply to Erstmal sorry für die späte… by Crifon
Das eigentlich Problem beginnt aber spätestens bei Schritt 4, der falschen Anzeige der Gesamtpartitur obwohl man noch in Auszug ist, alles danach sind wohl Folgefehler, und in Schritt 6 greift man dann endgültig ins Klo
In reply to Das eigentlich Problem… by Jojo-Schmitz
Okay, das ist also in der Weise doch generell reproduzierbar und liegt nicht speziell an meinem System.
Kann man da jetzt was machen oder scheint das von vornherein zu speziell für einen Fix.
Und wie könnte ich mich da jetzt mal einbringen, obwohl mein Horizont dafür leider etwas begrenzt ist.
Wie könnte ich z.B. in Zukunft ein Stack Trace selbst auslesen?
Viele Fragen sorry
In reply to Okay, das ist also in der… by Crifon
Stack Trace mache ich mit einer selbstgebauten Version von MuseScore. Wie das geht ist im Entwicklerhandbuch beschrieben, aber nicht ganz trivial.