小编Sam*_*ami的帖子

MessageDlg不发出声音

我有以下代码:

IF MessageDlg('Delete?',mtConfirmation,[mbYes,mbNo],0) = MrYes THEN
Begin
///Do Something;
End
Else
Begin
///Do Something;
End;
Run Code Online (Sandbox Code Playgroud)

如果Style是Windows在MessageDlg功能播放声音,但如果我改Style到Windows 10了为例,然后声音不工作.

  • 选择a时为什么声音不存在Style?

  • 我该如何解决这个问题?

注意:我正在使用Delphi 10 Seattle.

更新:

我试着MessageBeep(MB_ICONQUESTION);像David Heffernan在他的答案中建议的那样,但这也不会发出声音.

delphi delphi-10-seattle

5
推荐指数
1
解决办法
451
查看次数

PrimeNG导出为CSV

我有一个PrimeNG grid,由所PrimeNG提供的数据来自具有服务器端分页数据的服务,而从服务器中我们将仅收到当前页面记录。

我的HTML代码如下:

 <p-dataTable *ngIf="displayTable" #dataTable [value]="JSONArray"
            [lazy]="true" [responsive]="true" [rows]="10"
            [paginator]="true" selectionMode="single" 
            [(selection)]="selectedEvent" 
            (onRowSelect)="onRowSelect($event)" 
            [pageLinks]="5" [(first)] = "first"
            class="ui-datatable-scrollable-wrapper view-table" 
            [totalRecords]="totalRecords" (onLazyLoad)="loadCarsLazy($event)">
            <p-header>
                <div class="ui-helper-clearfix">
                    <button type="button" pButton icon="fa-file-o" iconPos="left"
                  label="CSV" (click)="dataTable.exportCSV()" style="float:left">
                    </button>
                </div>
            </p-header>
            <p-column field="col1" header="Column 1"></p-column>
            <p-column field="col2" header="Column 2"></p-column>
            <p-footer>
                <div>
                </div>
            </p-footer>
</p-dataTable>
Run Code Online (Sandbox Code Playgroud)

JSONArray变量只有10条记录(我的页面大小),但是我们要从服务器导出所有数据。假设我有5页,我想导出所有50条记录。

dataTable.exportCSV()仅导出我当前的第10页记录。有什么办法可以导出全部50条记录?

primeng angular primeng-datatable

5
推荐指数
1
解决办法
7692
查看次数

使用join进行更新

我正在尝试进行更新,这是我的查询

UPDATE t1
SET DOY = isnull(Sum(t2.Price),0)- isnull(Sum(t2.RestOfPrice),0) 
FROM customermaster t1 INNER JOIN History t2 
     ON t1.CustomerID = t2.CustomerID
Run Code Online (Sandbox Code Playgroud)

该查询抛出错误

聚合可能不会出现在UPDATE语句的集合列表中.

sql sql-server sql-server-2008

5
推荐指数
1
解决办法
58
查看次数

使用 Delphi TThread

这是第一次尝试使用Threads,我尝试使用 复制目录Thread,所以这就是我所做的(在我读完这篇文章之后):

unit Unit1;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, System.IOUtils, System.Types;

type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
TMyThread= class(TThread)
  private
    Fsource, FDest: String;
  protected
  public
    constructor Create(Const Source, Dest: string);
    destructor Destroy; override;
    procedure Execute(); override;
  published
end;
var
  Form1: TForm1;
  MT: TMyThread;
implementation

{$R *.dfm}

{ TMyThread }

constructor TMyThread.Create(const Source, Dest: …
Run Code Online (Sandbox Code Playgroud)

delphi multithreading

3
推荐指数
1
解决办法
8541
查看次数

如何用占位符替换占位符以使第一个条件始终为此SQL语句的TRUE?

如何用占位符替换占位符以使第一个条件始终为此SQL语句的TRUE?

SELECT fields FROM table WHERE field1 {placeholder} and field2 > 0;
Run Code Online (Sandbox Code Playgroud)

{placeholder} =?

感谢帮助!

mysql sql

3
推荐指数
1
解决办法
47
查看次数

带有不带引号的字符串参数的 SQL Server EXEC 是否有效?

我不小心调用了一个带有不带引号的字符串参数的存储过程。我预计会出现语法错误:

执行 (Transact-SQL)

如果参数的值为对象名、字符串或由数据库名或模式名限定,则整个名称必须用单引号括起来。

但这有效:

CREATE PROC foobar @a VARCHAR(40) AS BEGIN SELECT @a END
go
EXEC foobar @a = abc
Run Code Online (Sandbox Code Playgroud)

这让我很惊讶!我尝试了 SQL Server 2008、2012 和 2016 版。我是否遗漏了什么,或者这只是一个未记录的“功能”?

sql-server

3
推荐指数
1
解决办法
166
查看次数

更改 MessageDlg 语言 delphi

当我使用MessageDlg()如下代码的函数时:

if MessageDlg(SWarningWishToDelete + ' ' + PersonName + '?',
  mtWarning, [mbNo, mbYes], 0) = mrYes then
Run Code Online (Sandbox Code Playgroud)

是/否按钮以英语而不是我的操作系统语言显示。我在互联网上搜索了它,但是,我只是找到了大而旧的解决方案。我想知道是否有一种简单/新的方法来改变它?

delphi

3
推荐指数
1
解决办法
1802
查看次数

Messagedlg在Delphi xe7 android中

我只是试图在安装Delphi xe7,android平台上的MessageAlerts期间执行一个示例,遗憾的是它不起作用,它给出了以下错误消息:

阻止此平台中未实现的对话框

procedure TMessageAlertsForm.btnMultiButtonAlertClick(Sender: TObject);
begin
  { Show a multiple-button alert that triggers different code blocks according to
    your input }
  case MessageDlg('Choose a button:', System.UITypes.TMsgDlgType.mtInformation,
    [
      System.UITypes.TMsgDlgBtn.mbYes,
      System.UITypes.TMsgDlgBtn.mbNo,
      System.UITypes.TMsgDlgBtn.mbCancel
    ], 0) of
    { Detect which button was pushed and show a different message }
    mrYES:
      ShowMessage('You chose Yes');
    mrNo:
      ShowMessage('You chose No');
    mrCancel:
      ShowMessage('You chose Cancel');
  end;
end;
Run Code Online (Sandbox Code Playgroud)

任何想法如何解决?

delphi android firemonkey delphi-xe7

2
推荐指数
1
解决办法
1万
查看次数

组织 Flutter 小部件的最佳方式是什么?

我正在编写 Flutter 应用程序,我想知道使我的代码更具可读性的最佳方法是什么。

现在,我知道这两种方法:

  1. 创建一个最终变量并将自定义小部件存储在其上。
  2. 创建一个新的小部件作为模板。

那么有什么推荐的方法吗?

dart flutter

2
推荐指数
1
解决办法
2595
查看次数

在椭圆内画一条线

我正在尝试绘制一个内部有一条线的椭圆Bitmap,类似于这张图:

图片

我的应用可以加载位图图片,可以是任何尺寸.我只需要画一个椭圆线,里面有一条线.

我知道如何绘制椭圆,但我的问题是它内部的线:

Bmp.Canvas.Ellipse(0, 0, Bmp.Width, Bmp.Height);
Bmp.Canvas.MoveTo(?, ?);// Here is my problem
Bmp.Canvas.LineTo(?, ?);// here too
Run Code Online (Sandbox Code Playgroud)

我试试这个:

Bmp.Canvas.MoveTo(0, 0);
Bmp.Canvas.LineTo(Bmp.Width, Bmp.Height);
Run Code Online (Sandbox Code Playgroud)

但是这将从图片的左上角到右下角画一条线.

delphi

2
推荐指数
1
解决办法
157
查看次数