小编XXX*_*XXX的帖子

CellEndEdit之后的DataGridView SetFocus

我用了 CellEndEdit事件,在编辑单元格值后按下Enter键,然后单元格焦点向下移动.

我希望焦点回到我编辑值的原始Cell.

我用过很多方法,但都失败了.

Private Sub DataGridVie1_CellEndEdit(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridVie1.CellEndEdit
   '...
   '....editing codes here...to input and validate values...
   '...
   '...
   '...before the End If of the procedure I put this values
   DataGridVie1.Rows(e.RowIndex).Cells(e.ColumnIndex).Selected = True
   DataGridVie1.CurrentCell = DataGridVie1.Rows(e.RowIndex).Cells(e.ColumnIndex)
   'DataGridVie1.BeginEdit(False) '''DID NOT apply this because it cause to edit again.
End If
Run Code Online (Sandbox Code Playgroud)

我不知道编辑后或输入键后的实际代码,焦点回到编辑的原始单元格中.

因为每次我点击ENTER键,它直接进入下一个Cell.

是什么代码将焦点重新定位回原始Cell编辑.

我知道这个EditingControlShowing方法,但我不认为我必须使用那种方法来获得我想要的东西.

vb.net desktop datagridview winforms

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

从搜索中排除文件夹和文件

我投降,我花了我的时间差不多12小时得到我想要的,但我不能.

此代码搜索所有文件夹和文件名,但我想排除一些文件夹,包括我要从搜索中排除的文件夹的子目录.

我希望有人可以提供帮助.

procedure TForm1.CombineDir(InDir : string; OutStream : TStream);
var  AE : TArchiveEntry;
     dFound:boolean;

  procedure RecurseDirectory(ADir : string);
  var  sr : TSearchRec;
       TmpStream : TStream;
  begin
    if FindFirst(ADir + '*', faAnyFile, sr) = 0 then begin
      repeat
        if (sr.Attr and (faDirectory or faVolumeID)) = 0 then begin
          //ShowMessage('Filename is :>'+ ADir + sr.Name);
          if (NotThisPath.IndexOf(ADir + sr.Name)>=0) or dFound then begin
            ShowMessage('DO NOT INCLUDE THIS FILENAME :>'+ ADir + sr.Name);
          end else begin
            ShowMessage('>>> INCLUDE THIS FILENAME :>'+ ADir …
Run Code Online (Sandbox Code Playgroud)

delphi delphi-7

0
推荐指数
1
解决办法
1148
查看次数

文件压缩功能来自哪里

此代码使用:TArchiveEntry ;
那么,我真的怀疑这不是来自Zlib Unit吗?因为可以在不声明Zlib单元的情况下使用TArchiveEntry.

var AE : TArchiveEntry;
Run Code Online (Sandbox Code Playgroud)

AE.EntryType := aeFile;
AE.FileNameLen := Length(sr.Name);
AE.FileLength := sr.Size;
OutStream.Write(AE, SizeOf(AE));
OutStream.Write(sr.Name[1], Length(sr.Name));
// Write the file itself
TmpStream := TFileStream.Create(ADir + sr.Name, fmOpenRead or fmShareDenyWrite);
OutStream.CopyFrom(TmpStream, TmpStream.Size);
TmpStream.Free;
Run Code Online (Sandbox Code Playgroud)

毫无疑问,这是来自Zlib Unit.

var compr : TZCompressionStream;
Run Code Online (Sandbox Code Playgroud)

for i := 0 to zFiles.Count-1 do
begin
  compr := TZCompressionStream.Create(mStream, zcDefault);
  compr.CopyFrom(infile,c);
  compr.Free;
end;
Run Code Online (Sandbox Code Playgroud)

我想知道为什么,有什么区别?我无法弄明白,几乎有相同的表现.

compression delphi file

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

标签 统计

delphi ×2

compression ×1

datagridview ×1

delphi-7 ×1

desktop ×1

file ×1

vb.net ×1

winforms ×1