views:

147

answers:

4

I don't have the Delphi IDE installed. Can I still design forms?

+3  A: 

Using Win32: File | New Unit then you have full control of the code.

var
  F : TForm;
  L : TLabel;
begin
  F := TForm.Create(Application);
  L := TLabel.Create(F);
  L.Parent := F; // Needed to have it show up on the form.
  L.Left := 50;
  L.Top := 50;
  L.Caption := 'This is an example';
  F.Show;
end;

In .NET / Delphi Prism: Right Click on the Project|New Item|Class

namespace WindowsApplication2.Properties;

interface

uses
  System.Windows.Forms,
  System.Collections.Generic,
  System.Linq,
  System.Text;

type
  Class1 = public class(System.Windows.Forms.Form)
  private
  protected
    lablel1 : Label;
  public
     constructor;
  end;

implementation

constructor Class1;
begin
  self.label1 := new System.Windows.Forms.Label();
  self.SuspendLayout();

  self.label1.AutoSize := true;
  self.label1.Location := new System.Drawing.Point(37, 80);
  self.label1.Name := 'label1';
  self.label1.Size := new System.Drawing.Size(35, 13);
  self.label1.TabIndex := 0;
  self.label1.Text := 'This is an Example';

  self.ResumeLayout(false);
  self.PerformLayout();  
end;

end.
Robert Love
A: 

First, you don't need Delphi IDE to run a Delphi program. Delphi generates (usually) standalone .EXE applications, so

foo.exe

works as expected.

Second, you can compile your Delphi project with command line compiler. The exact syntaxis depends on your installed Delphi version. Take a look at this post or search for Delphi commandline compiler

Daniel Luyo
Don't you need the IDE to generate the res files?
Marco van de Voort
No, Marco. You can compile resource files with brcc32.exe.
Rob Kennedy
+3  A: 

Assuming from your answers that you do not have any compiler installed. In order to compile Delphi code you would need a compiler. There are no free versions available of Delphi anymore so unless you can find an old one you would have to buy Delphi. Delphi comes with a commandline compiler like gcc and can compile programs without an IDE.

Delphi 2006 and before win32:

dcc32 YourProject.dpr

Delphi 2006 and before .Net:

dccil YourProject.dpr

Delphi 2007 and after:

msbuild YourProject.dproj

This will result in a compiled binary and in case of an EXE you can run it like you are used to.

Robert Love explained perfectly how to write code to display a GUI without using the designer in the IDE. This will save you no money since you will have to buy the IDE anyway in order to get the commandline compiler.

There are free alternatives to Delphi like FreePascal and their free IDE Lazarus. I haven't checked for myself but I am pretty sure it comes with a commandline compiler as well.

Lars Truijens
D2007+ afaik do dcc32 fine too. I would equate msbuild more with make in older versions, not dcc32. Free Pascal has a commandline compiler "ppc<x>" per architecture, and a frontend binary "fpc" to switch between them
Marco van de Voort
True, but D2007 and up do not use .cfg files anymore so you will miss any project options you have set and would have to supply them as parameters.
Lars Truijens
A: 

Note that the already mentioned Lazarus also comes with a Delphi-like designer.

Marco van de Voort