---
title: "Global procedur"
type: "forum-thread"
url: "https://www.webforum.nu/amne/programmering/27933-global-procedur"
topic: "Programmering"
topic_url: "https://www.webforum.nu/amne/programmering"
author: "mott"
published: "2001-10-08T21:52:00.000Z"
updated: "2001-10-09T07:00:00.000Z"
replies: 1
views: 362
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/programmering/27933-global-procedur"
---

# Global procedur

## #1 — mott, 2001-10-08T21:52Z

Hej! Jag håller på att gå över från VB till Delphi och har lite svårt att hitta vissa saker.

Jag försöker göra en funktion för att centrera formen på skärmen.

Själva koden är ju rätt självklar:

\<font size="1" face="Verdana, Arial, Helvetica, sans-serif"\>Kod:\<font size="1" face="Verdana, Arial, Helvetica, sans-serif" color="#666600"\>
  frmPensionStart.Left:=Screen.Width div 2 - frmPensionStart.Left div 2;
  frmPensionStart.Top:=Screen.Height div 2 - frmPensionStart.Height div 2;

Men nu vill jag ju inte bara centrera frmPension utan vilken form som helst.

Dessutom vill jag kunna kalla på centrera-funktionen varifrån som helst, vilken form som helst.

Alltså typ (i VB)

Modul:

\<font size="1" face="Verdana, Arial, Helvetica, sans-serif"\>Kod:\<font size="1" face="Verdana, Arial, Helvetica, sans-serif" color="#666600"\>
Function CenterWindow(Window)
  Window.left=...osv
  Window.top=...osv
End Function

Valfri form:

\<font size="1" face="Verdana, Arial, Helvetica, sans-serif"\>Kod:\<font size="1" face="Verdana, Arial, Helvetica, sans-serif" color="#666600"\>
CenterWindow(Me)

\--

Hur i H-E gör jag detta i Delphi? \*desperat\*

Permalänk: https://www.webforum.nu/p/27933

## #2 — jt, 2001-10-09T07:00Z

Två exempel på hur du deklarerar funktioner så du kan anropa dessa globalt. Du måste lägga till Unit1 i uses när du vill anväda funktionen från någon annan unit.

uses
  unit1;

Form1.CenterWindowA(Me)
CenterWindowB(Me)

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls;

type
  TForm1 = class(TForm)
  private
    { Private declarations }
  public
    { Public declarations }
    function CenterWindowA(AForm: TForm):boolean;
  end;

var
  Form1: TForm1;
  function CenterWindowB(AForm: TForm):boolean;

implementation

uses Unit2;

{$R \*.DFM}

function TForm1.CenterWindowA(AForm: TForm): boolean;
begin
  AForm.Position := poScreenCenter;
end;

function CenterWindowB(AForm: TForm):boolean;
begin
  AForm.Position := poScreenCenter;
end;

end.

\[Redigerat av jt den 09 okt 2001\]

Permalänk: https://www.webforum.nu/p/400718

---

Tråden på webben: https://www.webforum.nu/amne/programmering/27933-global-procedur
