【问题标题】:Delphi - Colordialog select Black as colorDelphi - Colordialog 选择黑色作为颜色
【发布时间】:2021-09-15 21:29:53
【问题描述】:

我是 Delphi 的新手,需要一些帮助。

我有一个程序,一个背景颜色转换器,带有TColorDialog。这在其他方面非常有效,但是当我关闭ColorDialog 而不从中选择颜色时会出现问题。然后背景变为黑色,并且在.ini 文件中将黑色保存为颜色“0”。

我的代码:

procedure TEinstellungenF.BtnBackgroundClick(Sender: TObject);
var filename:String;
ini:TIniFile;
begin       // Speichert die im ColorDialog ausgewählten Background Farben in der Ini
  filename := ExtractFilePath(ParamStr(0)) + 'Einstellungen.ini';
  ini := TIniFile.Create(filename);
  ColorDialog1.Execute();
  try
    ini.WriteInteger('Farben','Hintergrundfarbe', ColorDialog1.Color);
  finally
    ini.Free;
  end;

  FrmMain.Color := TColor(Ini.ReadInteger('Farben','Hintergrundfarbe',ColorDialog1.Color));
  Color := TColor(Ini.ReadInteger('Farben','Hintergrundfarbe',ColorDialog1.Color));
end;``` 

【问题讨论】:

    标签: delphi background-color colordialog


    【解决方案1】:

    检查ColorDialog1.Execute的返回值并采取相应措施。

    来自文档:

    Execute 打开颜色选择对话框,当用户选择一种颜色并单击 OK 时返回 true,或者当用户取消时返回 false。

    【讨论】:

    • 谢谢!这真的帮助了我。感谢您的帮助
    • 不客气!请考虑接受答案(单击答案旁边的勾号,绿色)。在您获得一些“声誉”后,您还可以投票/否决答案。是explained here
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-10-18
    • 2016-09-11
    • 1970-01-01
    • 1970-01-01
    • 2012-09-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多