小编Jar*_*ike的帖子

八进制数字文字:什么时候?为什么?自从?

我从来没有在我的代码中使用八进制数字,也没有遇到任何使用它的代码(尽管有十六进制和bit twddling).

我在1994年开始用C/C++编程,所以也许我太年轻了?旧代码使用八进制吗?C包含对这些的支持,前缀为0,但使用这些基数为8的数字的代码在哪里?

c numbers

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

在ListView中的网格中显示128x128像素或更大的缩略图图标

原始问题(见下面的更新)

我有一个WinForms程序需要一个体面的可滚动图标控件与大图标(真的是128x128或更大的缩略图),可以点击到hilight或双击以执行某些操作.最好是浪费的空间最小(每个图标下方可能需要短文件名标题;如果文件名太长,我可以添加省略号).

具有适当颜色,间距等的listview的完成版本http://www.updike.org/images/listview-great.png

我尝试使用带有LargeIcon的ListView(默认.View),结果令人失望:

截图显示LargeIcon视图中的小图标http://www.updike.org/images/listview-poor.png

也许我错误填充控件?码:

        ImageList ilist = new ImageList();
        this.listView.LargeImageList = ilist;
        int i = 0;
        foreach (GradorCacheFile gcf in gc.files)
        {
            Bitmap b = gcf.image128;
            ilist.Images.Add(b);
            ListViewItem lvi = new ListViewItem("text");
            lvi.ImageIndex = i;
            this.listView.Items.Add(lvi);
            i++;
        }
Run Code Online (Sandbox Code Playgroud)

我需要带有小空间的大图标,而不是带有令人尴尬的小图标的大空间.

  1. 是否有.NET控件可以满足我的需求?
    • 有没有最喜欢的第三方控件呢?
    • 如果没有,哪个控件最好继承和调整以使其工作?
    • 我应该分解并制作一个自定义控件(我有很多经验...只是不想去那个极端,因为这有点涉及).

我找到了关于OwnerDraw的这个教程,但是从那里开始的工作基本上达到了上面的数字3或4,因为该演示只是展示了如何在细节视图中对行进行调整.

更新

添加线

ilist.ImageSize = new Size(128, 128);
Run Code Online (Sandbox Code Playgroud)

在for循环之前修复了大小问题,但现在图像被调色为8位(看起来像系统颜色?),即使调试器显示图像作为24bpp System.Drawing.Bitmap插入到ImageList中:

大图标,最后是http://www.updike.org/images/listview-poor2.png

  1. 我如何(可以吗?)使图像以完整的24位颜色显示?
    • 图标周围的间距仍然相当浪费......我该如何解决?我可以吗?

更新2

随着添加线

ilist.ColorDepth = ColorDepth.Depth24Bit;
Run Code Online (Sandbox Code Playgroud)

设置ilist.ImageSize之后,我按照仲裁者的建议改变了间距:

[DllImport("user32.dll")]
public static extern IntPtr SendMessage(IntPtr hWnd, uint Msg, IntPtr wParam, IntPtr lParam);

public …
Run Code Online (Sandbox Code Playgroud)

c# listview thumbnails .net-2.0 winforms

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

如何使PictureBox使用最近邻重采样?

我正在使用StretchImage,因为该框可以使用分割器调整大小.看起来默认是某种平滑的双线性滤波,导致我的图像模糊并具有莫尔条纹.

.net c# gdi+ picturebox winforms

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

使用Go为iPhone应用程序编写库

我正在考虑使用Go作为C/Objective-C的低级别,高性能语言来实现iPhone App的库.Go编译器中的任何一个都可以生成一个库,可以使用Go运行时链接到本机iPhone应用程序等等吗?是否有Go的ARM端口或gccgo/gcc是否支持此功能?我想,因为gccgo使用gcc作为后端而Xcode使用gcc编译iPhone应用程序,所以很有可能这是可能的.如果可能,我将如何在Xcode项目中进行设置?

有没有人试过这个或看过它之前讨论过?(当我进行谷歌搜索时,比如"编译去代码iphone","go"部分完全未使用,我只得到有关iPhone开发的内容.)

c iphone gcc arm go

12
推荐指数
1
解决办法
2996
查看次数

最大线性尺寸2d点集

给定一组有序的2D像素位置(相邻或相邻对角线),形成一条没有重复的完整路径,如何确定多边形的最大线性尺寸,其周长是该像素集?(其中GLD是集合中任何一对点的最大线性距离)

就我的目的而言,明显的O(n ^ 2)解决方案对于数千个点的数字可能不够快.是否有良好的启发式或查找方法使时间复杂度更接近O(n)或O(log(n))?

algorithm graphics geometry

11
推荐指数
1
解决办法
4889
查看次数

Javascript文本输入字段,显示指令(占位符)文本

有一个文本输入字段的最佳方法是什么,该字段显示以灰色显示在该字段中输入内容的说明.当您关注该输入字段时,灰色指令文本将消失,输入文本将显示为黑色.如果您删除输入文本并远离该输入,则会再次出现灰色文本说明.

我尝试用jQuery实现这个,但是我遇到了不同浏览器的各种奇怪问题.有时当你回到屏幕时,说明文字变黑,不再消失,这样的问题.

这有一个标准的JavaScript库吗?我找不到任何东西!

哦,指令文本不能是图像,因为它必须以不同的语言提供,具体取决于浏览器的语言偏好.

javascript forms jquery input textfield

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

如何在BindingSource.Filter之后获取DataGridView的可见行数?

我有一张桌子,上面写着1640件物品.我设置

bindingSource.Filter = "some filter query string";
Run Code Online (Sandbox Code Playgroud)

并且大多数行都会消失,比如400行.我希望能够告诉用户"显示400个1640个项目",因为他们点击了一些文本框,这些文本框更改了过滤字符串,因此哪些行在dataGridView对象中可见(很像iTunes,但对于医疗数据,不是流派/艺术家/专辑过滤歌曲).

我尝试使用bindingSource.Count,无论Filter字符串设置为什么,它总是1640(即使所需的行数少得多).我尝试循环遍历dataGridView.Rows中的所有行,并仅计算可见的行,但仍然总计为1640.

我在哪里可以获得这些信息?

请注意,我没有使用SQL,但bindingSource.DataSource是一个DataView的DataSource,它包含在DataTable中(来自从XML读取的dataSet).

.net xml datagridview winforms c#-2.0

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

检测两个重合线段的重合子集

这个问题与以下内容有关:

但请注意,在大多数解决方案中都会完全掩盖一个有趣的子问题,即使有三个子案例,它们只会在重合的情况下返回null:

  • 巧合,但不重叠
  • 触摸只是点和巧合
  • 重叠/重合线子段

例如,我们可以像这样设计一个C#函数:

public static PointF[] Intersection(PointF a1, PointF a2, PointF b1, PointF b2)
Run Code Online (Sandbox Code Playgroud)

其中(a1,a2)是一个线段而(b1,b2)是另一个.

此功能需要涵盖大多数实现或解释掩盖的所有奇怪情况.为了解释重合线的奇怪性,该函数可以返回PointF的数组:

  • 如果线条平行或不相交(无限线相交但线段不相交,或线条平行),则为零结果点(或null )
  • 一个结果点(包含交叉点位置)如果它们相交或者它们在一个点上重合
  • 如果两条线重合,则两个结果点(对于线段的重叠部分)

.net c# graphics geometry gdi+

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

VS Code HTML模式选项可关闭自动关闭标签

在以下场景中,我无法找到关闭VS Code HTML模式编辑器为您输入内容的新"功能"的选项:

我输入<b>,当我点击最后一个>然后键入</ b>然后我必须删除并移动到我想要的位置.

在这种情况下,如何让VS Code不为我打字?我有这两个选项设置如下:

"editor.quickSuggestions": false,
"editor.autoClosingBrackets": false,
Run Code Online (Sandbox Code Playgroud)

与此问题相反的排序:VSCode不会自动完成HTML

editor visual-studio-code

9
推荐指数
1
解决办法
3051
查看次数

获得csharp-mode Emacs语法突出显示工作

谷歌搜索"csharp模式emacs"产生页面

http://www.emacswiki.org/emacs/CSharpMode

其中包括一些指向各种可下载的emacs lisp文件的链接.2005链接(DylanMoonfire)坏了,所以我下载了:

http://lists.ximian.com/pipermail/mono-list/2002-May/006182.html

as~/.emacslib/csharp-mode.el

并补充说:

(autoload 'csharp-mode "csharp-mode"
  "Major mode for editing C# code." t)
(setq auto-mode-alist (cons '( "\\.cs\\'" . csharp-mode ) auto-mode-alist ))
Run Code Online (Sandbox Code Playgroud)

到我的.emacs文件(任何地方,开始,中间或结尾).我尝试编辑一个名为"t.cs"的新文本文件,我收到错误:

文件模式指定错误:(错误"缓冲区t.cs不是CC模式缓冲区(c-set-style)")

并且没有语法突出显示.我不熟悉emacs-lisp,但我知道足够安装对语言模式的支持,而csharp-mode与我安装的其他语言模式相比并不好看.

我很高兴能在Mac上玩Mono并遇到这个荒谬的障碍!那里的任何人都知道如何在emacs中获得对C#语法高亮的体面支持?

注意:我在OS X Leopard上使用运行Emacs 22.1.1的MacBook Pro.

c# emacs mono elisp

8
推荐指数
1
解决办法
5341
查看次数