Le code ci-dessous redimensionne automatiquement le champ QLineEdit selon les besoins (nouvelle largeur/hauteur basée sur du texte dynamique). Maintenant, afin de faire correspondre le QLineEdit redimensionné au widget conteneur, je fais adjustsize()
sur le widget conteneur.QWidget (un qlineedit) redimensionner automatiquement le contenu
éléments pertinents dans mon code:
void theContainer::resize_to_content(QString text) {
{
// ...
lineedit.setFixedSize(calcualtedWidth, calculatedHigh);
theContainer::adjustSize();
}
le problème rencontré est que même si les deux redimensionnements du QLineEdit et le travail widget parent (dans une certaine mesure), la limitation dans ce cas est que le QLineEdit, après redimensionnement, chevauche les widgets adjacents! Il semble que ce widget conteneur - quand il s'ajuste - semble ignorer les autres enfants non manipulés ... Existe-t-il un moyen systématique d'empêcher un tel chevauchement ?? pas seulement une solution de contournement que je veux dire.
- Widgets avant ajustements
- Widgets après ajustements de changement de texte et taille:
Notez que AjustSize() le fait réellement (redimensionner la fenêtre entière). –