Board index » cppbuilder » scaling & positioning controls on TForm->Maximized()

scaling & positioning controls on TForm->Maximized()


2004-02-12 06:41:30 AM
cppbuilder12
hi dear builders,
I'm realy upset...! I spent HOURS to write down values for positioning
and scaling my controls on my TForm when it gets maximized...
the below code works PERFECT ! but ONLY under the resolution: 1024 x 768
is there a easier way to "translate" the values to each kind of screen
resolution...?
by the way I'm using BCB 3 pro under WinXP...
thanks for any help...
Oren
/****************************************************************/
void __fastcall TfrmStringDetails::Resizen(TObject *Sender)
{
int Breite = frmStringDetails->Width,
Hoehe = frmStringDetails->Height,
Top = frmStringDetails->Top;
if(frmStringDetails->WindowState == wsNormal)
{
cmdStart->Left = 492;
cmdDelete_SearchItem->Left = 187;
cmdDelete_ReplaceItem->Left = 471;
lblAktuele_Zeile->Left = 296; lblZeile_Aktuel->Left = 364;
lblZeilen_Gesamt->Left = 437; lblZeilen_Insgesamt->Left = 521;
lblGroesse->Left = 296; lblFileSize->Left = 354;
lblReplaceWith->Left = 207;
txtFilename->Width = 483;
txtSuchen->Width = 182;
txtErsetzen->Width = 182;
txtSuchen->Left = 3;
txtErsetzen->Left = 287;
txtSaveFileName->Width = 469;
cmdOpenFile->Left = 557;
cmdSaveFile->Left = 557;
Memo1->Width = 574;
Memo1->Height = 313;
Panel_Oben->Width = 581;
Panel_Mitte->Width = 581;
Panel_Unten->Width = 576;
Panel_Mitte->Top = 348;
Panel_Unten->Top = 404;
Bevel_Top->Width = 571;
Bevel_Mitte->Width = 571;
Bevel_Unten->Width = 571;
Bevel_Trenner->Left = 282;
}
if(frmStringDetails->WindowState == wsMaximized)
{
cmdStart->Left = Breite - 96;
lblReplaceWith->Left = (Breite / 2) - 88;
Memo1->Width = Breite - 12;
Memo1->Height = Hoehe - 178;
Panel_Oben->Width = Breite -8;
Panel_Mitte->Width = Breite -8;
Panel_Unten->Width = Breite -10;
Panel_Mitte->Top = Top + 606;
Panel_Unten->Top = Top + 662;
Bevel_Top->Width = Breite - 12;
Bevel_Mitte->Width = Breite - 12;
Bevel_Unten->Width = Breite - 12;
Bevel_Trenner->Left = Panel_Unten->Width / 2;
cmdDelete_ReplaceItem->Left = (Breite / 2) + 397;
cmdDelete_SearchItem->Left = 405;
txtFilename->Width = Breite - 104;
txtSuchen->Width = 400;
txtErsetzen->Width = 400;
txtErsetzen->Left = (Breite / 2) - 5;
txtSaveFileName->Width = Breite - 119;
cmdOpenFile->Left = Breite - 30;
cmdSaveFile->Left = Breite - 30;
lblAktuele_Zeile->Left = Panel_Unten->Width / 2 + 14;
lblZeile_Aktuel->Left = Panel_Unten->Width / 2 + 82;
lblZeilen_Gesamt->Left = Panel_Unten->Width / 2 + 180;
lblZeilen_Insgesamt->Left = Panel_Unten->Width / 2 + 264;
lblGroesse->Left = Panel_Unten->Width / 2 + 14; lblFileSize->Left =
Panel_Unten->Width / 2 + 72;
}
}
 
 

Re:scaling & positioning controls on TForm->Maximized()

"Oren (Halvani.de)" < XXXX@XXXXX.COM >wrote in message
Quote
the below code works PERFECT ! but ONLY under the resolution:
1024 x 768 is there a easier way to "translate" the values to each
kind of screen resolution...?
Why not simply redesign your form to utilize the existing Align and
Constraints properties for each component? Those properties are
specifically designed for controlling positioning and sizing when parent
containers themselves are resized.
Gambit