Plus précisément, quelle est la manière la plus élégante de lancer l'objet Graphics dans un appel paint() jusqu'à un objet Graphics2D?Quelle est la manière la plus élégante de transformer une variable que vous venez de recevoir en argument?
public void paint(Graphics g) {
// How do I convert/cast/etc the g variable to a Graphics2D object?
}
Ou est-ce que je manque le point ici? Y a-t-il une meilleure façon de gérer cela en général?
Vous recevez toujours un? Pourquoi les arguments dans la déclaration "Graphics g" et il n'y a pas de "Graphics2D g" alternative à remplacer? En interne, un objet Graphics2D est-il converti en objet Graphics pour une compatibilité ascendante, puis vous pouvez le restaurer sur Graphics2D si nécessaire? – spligak
Vous recevez un objet Graphics pour une raison historique dont je ne me soucie plus. Je fais toujours le casting si j'ai besoin de méthodes G2D. – jjnguy
Vous pouvez utiliser g comme la variable Graphics2D car il va être utilisé dans tout le code. Vous pouvez également avoir un composant général et le transmettre à un moteur de rendu en utilisant une interface qui utilise Graphics2D au lieu de Graphics pour les paramètres. –