Autor Beitrag
neffets
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 29



BeitragVerfasst: Do 17.05.07 14:38 
Ich programmieren auf dem Laptop mit einer Auflösung 1200X800.
Wenn ich das Programm auf einem PC mit Auflösung 800X600 ausführe muß füchterlich gescrollt werden, um alle Komponenten ansprechen zu könnne.
Gibt es eine Procedure, die je nach Bildschirmauflösung alle Formulare mit ihren Komponenten in gleichem Maße scaliert, daß immer Fullscreen ohne scrollbalken erhalten wird?

Beste Grüße
D. Annies
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1843

windows 7
D6 Enterprise, D7 Pers und TD 2006
BeitragVerfasst: Sa 19.05.07 09:16 
Hi, neffets,

ja, die gibt es, ich muss sie bloß noch wiederfinden...

Melde mich dann, bis bald, wohl noch heute.

D. Annies
neffets Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 29



BeitragVerfasst: Sa 19.05.07 09:39 
Titel: formular Bildschirmauflösung anpassen
das wäre nett.
Ich habe zwar schon eine Procedur gefunden, die scaliert zwar das Formular, aber die darauf enthaltenen buttons, pagecontrol u.ä. werden verzerrt und z.b. bei pagecontroll sind die Reiter total verdeckt.
Blackheart666
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2195

XP
D3Prof, D6Pers.
BeitragVerfasst: Sa 19.05.07 10:28 
Musst Du mal schaun, bei Mir hatt das bis jetzt funktioniert.
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
procedure TForm1.FormShow(Sender: TObject);
const breite=800{Auflösung, unter der das Fenster erstellt wurde}
  hoehe=600;
var schrift: integer;
begin
  schrift := pixelsperinch-96;
  if screen.width>breite then begin
    if schrift>0 then
      {für große Schriften}
      ScaleBy(round(((screen.width/breite)*100)-((screen.width/breite-1)*100)),100)
    else
      {für kleine Schriften}
      ScaleBy(round(((screen.width/breite)*100)),100);
  end
else begin
    if screen.width=breite then
      ScaleBy(round(((screen.width/breite)*100)-schrift),100)
    else begin
      if schrift>0 then
        {für große Schriften}
        ScaleBy(round((100-(breite/screen.width-1)*100)-(breite/screen.width-1)*100),100)
      else
        {für kleine Schriften}
        ScaleBy(round((100-(breite/screen.width-1)*100)),100);
    end;
  end;
end;

_________________
Blackheart666
Der Irrsinn ist bei Einzelnen etwas Seltenes, - aber bei Gruppen, Parteien, Völkern, Zeiten die Regel. (Friedrich Nietzsche)
D. Annies
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1843

windows 7
D6 Enterprise, D7 Pers und TD 2006
BeitragVerfasst: Sa 19.05.07 21:22 
Hi, neffets,

hab's noch nicht wiedergefunden, leider!
Ich suche morgen weiter, es muss auf meinem zweiten Rechner
sein - Geduld!

Grüße von D. Annies
Mindforce
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 358

Win XP Pro / MCE, Win 98, Slax (Linux)
Delphi 07 PRO, Delphi 3+7 (mit Prdx)
BeitragVerfasst: Sa 19.05.07 21:26 
Hi,

Blackheart666 hat bereits den Code gepostet den ich dir eigentlich auch Posten wollte :D
Der funzt sehr gut und muss auch gehen!

MF

_________________
Our force; in mind.
neffets Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 29



BeitragVerfasst: So 20.05.07 17:03 
Titel: formular bildschirmauflösung anpassen
besten Dank
diese Procedure fuktioniert tatsächlich.
beste Grüße