Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

Εχω τον παρακατω κωδικα σε winforms που μετακινει μια εικονα απο αριστερα προς τα δεξια. Πως μπορω να αυξησω την ταχυτητα χωρις να αυξησω το βημα στην μεταβλητη i;

Θελω δηλαδη να μετακινειται ενα πιξελ καθε φορα οπως φαινεται παρακατω αλλα με μεγαλυτερη ταχυτητα. Δεν ειναι υποχρεωτικο να γινει χρηση του pictureBox.

            for (int i = 0; i <= 1500; i++)
                pictureBox1.Location = new Point(i, 100);
Δημοσ.

 

Εχω τον παρακατω κωδικα σε winforms που μετακινει μια εικονα απο αριστερα προς τα δεξια. Πως μπορω να αυξησω την ταχυτητα χωρις να αυξησω το βημα στην μεταβλητη i;

Θελω δηλαδη να μετακινειται ενα πιξελ καθε φορα οπως φαινεται παρακατω αλλα με μεγαλυτερη ταχυτητα. Δεν ειναι υποχρεωτικο να γινει χρηση του pictureBox.

            for (int i = 0; i <= 1500; i++)
                pictureBox1.Location = new Point(i, 100);

το pictureBox1.Location = new Point(2*i, 100); σου κάνει??

Δημοσ.

Δεν μπορεις να πας με μεγαλυτερη ταχυτητα. Τα win forms ειναι vsync. Δηλαδη, καθε iteration που κανει κατι στο gdi, δεν μπορει να εχει μικροτερο δελτα απο τα 16ms (60Hz screen) ή 10ms(100Hz screen).

Αναγκαστικα θα πρεπει να φτιαξεις μια "σχεση" μεταξυ του δελτα του iteration και τα pixel που μετακινουνται

Δημοσ.

Δεν μπορεις να πας με μεγαλυτερη ταχυτητα. Τα win forms ειναι vsync. Δηλαδη, καθε iteration που κανει κατι στο gdi, δεν μπορει να εχει μικροτερο δελτα απο τα 16ms (60Hz screen) ή 10ms(100Hz screen).

Αναγκαστικα θα πρεπει να φτιαξεις μια "σχεση" μεταξυ του δελτα του iteration και τα pixel που μετακινουνται

 

Σκεφτομουν μηπως με Graphics.DrawImage() ή με χρηση WinApi ειχα γρηγοροτερη κινηση.

Με WPF μπορω να εχω μεγαλυτερη ταχυτητα;

Παντως ο κωδικας στο #1 δεν παιζει σε WPF.

Τι πρεπει να αλλαξω στον κωδικα για να παιζει σε WPF;

Δημοσ.

σε wpf θες animation να δεις. Μαλλον storyboard + translate transform. Οχι πως θα κανει θαυματα αλλα ισως παει καλυτερα εως αριστα αν εχεις καλο υπολογιστη.Αλλιως θα σερνεται εαν εχεις τιποτα ATOM  cpu

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...