AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi bsSingle BorderStyle von Form1 ohne Maximieren ?
Thema durchsuchen
Ansicht
Themen-Optionen

bsSingle BorderStyle von Form1 ohne Maximieren ?

Ein Thema von Premaider · begonnen am 1. Apr 2012 · letzter Beitrag vom 6. Okt 2020
Antwort Antwort
Seite 1 von 2  1 2      
Premaider

Registriert seit: 31. Mär 2012
160 Beiträge
 
#1

bsSingle BorderStyle von Form1 ohne Maximieren ?

  Alt 1. Apr 2012, 14:12
Hey Leute ich möchte meinem Programm den BorderStyle bsSingle verpassen allerdings ohne Maximieren, also oben rechts nur minimieren und schließen. Wie mache ich das ?
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: bsSingle BorderStyle von Form1 ohne Maximieren ?

  Alt 1. Apr 2012, 14:17
Den Eintrag aus BorderIcons rausnehmen
Markus Kinzler
  Mit Zitat antworten Zitat
Premaider

Registriert seit: 31. Mär 2012
160 Beiträge
 
#3

AW: bsSingle BorderStyle von Form1 ohne Maximieren ?

  Alt 1. Apr 2012, 14:20
Dann ist es aber ja nur grau. ich möchte es wenn möglich ganz weghaben
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#4

AW: bsSingle BorderStyle von Form1 ohne Maximieren ?

  Alt 1. Apr 2012, 14:37
Mit Hilfe der Api wirst du es wahrscheinlich hinkriegen.
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#5

AW: bsSingle BorderStyle von Form1 ohne Maximieren ?

  Alt 1. Apr 2012, 14:44
Delphi-Quellcode:
unit Unit2;

interface

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

type

  TForm=Class(Forms.TForm)
       public
       procedure GetBorderIconStyles(var Style, ExStyle: Cardinal); override;
  End;
  TForm2 = class(TForm)
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form2: TForm2;

implementation

{$R *.dfm}


{ TForm }

procedure TForm.GetBorderIconStyles(var Style, ExStyle: Cardinal);
begin
  inherited;
  Style := Style and not (WS_MINIMIZEBOX or WS_MaximizeBOX)
end;

end.
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#6

AW: bsSingle BorderStyle von Form1 ohne Maximieren ?

  Alt 1. Apr 2012, 14:50
Nein, was soll man mit der API da hinbekommen? (außer man zeichnet die Titelleiste komplett selber)

Das ist ein Standardverhalten von Windows.
Wenn der Minimierenbutton vorhanden ist, dann auch der Maximimieren (wenn auch nur inaktiv).
Ohne den Minimizebutton ist auch der Maximize weg.
$2B or not $2B
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#7

AW: bsSingle BorderStyle von Form1 ohne Maximieren ?

  Alt 1. Apr 2012, 15:04
da habe ich oben doch gegen das KISS-Prinzip verstossen, besser so
Delphi-Quellcode:
unit Unit2;

interface

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

type

  TForm2 = class(TForm)
  private
    { Private-Deklarationen }

  public
  procedure GetBorderIconStyles(var Style, ExStyle: Cardinal); override;
    { Public-Deklarationen }
  end;

var
  Form2: TForm2;

implementation

{$R *.dfm}

procedure TForm2.GetBorderIconStyles(var Style, ExStyle: Cardinal);
begin
  inherited;
  Style := Style and not (WS_MINIMIZEBOX or WS_MaximizeBOX)
end;

end.
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
Premaider

Registriert seit: 31. Mär 2012
160 Beiträge
 
#8

AW: bsSingle BorderStyle von Form1 ohne Maximieren ?

  Alt 1. Apr 2012, 15:04
Delphi-Quellcode:
unit Unit2;

interface

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

type

  TForm=Class(Forms.TForm)
       public
       procedure GetBorderIconStyles(var Style, ExStyle: Cardinal); override;
  End;
  TForm2 = class(TForm)
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form2: TForm2;

implementation

{$R *.dfm}


{ TForm }

procedure TForm.GetBorderIconStyles(var Style, ExStyle: Cardinal);
begin
  inherited;
  Style := Style and not (WS_MINIMIZEBOX or WS_MaximizeBOX)
end;

end.
Habe eine neue Unit erstellt und das ganze von dir eingefügt. Folgende Fehlermeldungen:
Delphi-Quellcode:
[Fehler] Unit2.pas(13): Methode 'GetBorderIconStyles' nicht in Basisklasse gefunden
[Warnung] Unit2.pas(27): Datei nicht gefunden: 'Unit2.dfm'
[Fataler Fehler] Project1.dpr(6): Verwendete Unit 'Unit2.pas' kann nicht compiliert werden
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#9

AW: bsSingle BorderStyle von Form1 ohne Maximieren ?

  Alt 1. Apr 2012, 15:42
Premaider, was erwartest du jetzt mit deiner Frage? Selbst wenn der Tipp unter D7 funktionieren würde, das steht and not (WS_MINIMIZEBOX or WS_MaximizeBOX) . Also beides.

Hier das gleiche in grün:

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
  SetWindowLong(Handle, GWL_STYLE,
    GetWindowLong(Handle, GWL_STYLE)
    and not (WS_MINIMIZEBOX or WS_MAXIMIZEBOX));
end;
Kannst du experimentieren.

Ansonsten siehe Beitrag von himitsu.
  Mit Zitat antworten Zitat
Furtbichler
(Gast)

n/a Beiträge
 
#10

AW: bsSingle BorderStyle von Form1 ohne Maximieren ?

  Alt 2. Apr 2012, 08:06
BorderStyle := bsDialog reicht nicht?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:08 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz