问题列表 - 第16701页

在C#中解压缩JPEG图像的最快方法是什么?

我需要编写一个应用程序来播放DICOM多帧图像.每帧都以JPEG格式存储.所有帧都连续存储在一个文件中.现在,我读出每个帧数据并将其传递给以下例程,以构建一个用于显示的位图:

    Bitmap CreateBitmap(byte[] pixelBuffer, int frameSize)
    {
        Bitmap image = null;

        try
        {
            long startTicks = DateTime.Now.Ticks;
            MemoryStream pixelStream = new MemoryStream(pixelBuffer, 0, frameSize);
            image = new Bitmap(pixelStream);
            loadTime = DateTime.Now.Ticks - startTicks;
        }
        catch (Exception ex)
        {
            Log.LogException(ex);
        }

        return image;
    }
Run Code Online (Sandbox Code Playgroud)

在测试期间,除了上述例程中的性能不是最佳之外,一切正常.对于800x600帧大小,此例程所需的时间为0毫秒和15毫秒(我不知道为什么).对于1024x768帧大小,所需时间为15毫秒或31毫秒.我的目标是流式传输图像数据并以60Hz的频率播放图像(1024x768版本)而不丢帧.这表明我必须在15毫秒内不断地解压缩JPEG帧.所以我的问题是更好的方法是什么?

c# windows performance winforms

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

如何创建自定义UIAlertView

我们正在创建一个沉浸式应用程序,需要具有与a类似的行为UIAlertView,但我们不希望它看起来像系统对话框,我们想要使用我们自己的图形.我完成了很大一部分工作,但是我遇到了一些障碍:

  1. 如何让UIView显示在状态栏上方(这样我可以变暗,就像UIAlertView一样)?这可能吗?我已将其添加到窗口中,但它仍显示在状态栏下方.

  2. 如何将其显示为部分透明但文本仍然完全不透明?我希望它显示类似于a UIAlertView它应该是半透明的,但是如果我将alpha设置为.8,那么也会减少子视图的alpha.如果我只减少背景图像的alpha,则按钮显示为不透明.如果我减少背景图像和按钮的alpha,则按钮看起来不像是嵌入在背景图像中.我非常希望不必为每个嵌入式按钮排列创建不同的图像

编辑:我还没有找到状态栏问题的解决方案,但我注意到标准的UIAlertView显示在自己的UIWindow中,当我调查它时,我找到了windowLevel属性:

const UIWindowLevel UIWindowLevelNormal;
const UIWindowLevel UIWindowLevelAlert;
const UIWindowLevel UIWindowLevelStatusBar;
Run Code Online (Sandbox Code Playgroud)

使用我自己的UIWindow UIWindowLevelAlert仍然没有让它显示在状态栏上方.我没试过UIWindowLevelStatusBar.

iphone cocoa-touch objective-c

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

C#对象的事务?

只是好奇,是否支持普通C#对象上的事务?喜欢

using (var transaction = new ObjectTransaction(obj))
{
  try
  {
    obj.Prop1 = value;
    obj.Prop2 = value;
    obj.Recalculate(); // may fire exception
    transaction.Commit(); // now obj is saved
  }
  except
  {
     transaction.Rollback(); // now obj properties are restored
  }
}
Run Code Online (Sandbox Code Playgroud)

只是为了让答案更有用;-)其他语言有什么相似之处吗?

STM更新:这是它声称的内容:

atomic {
  x++;
  y--;
  throw;
}
Run Code Online (Sandbox Code Playgroud)

将保持x/y不变,包括链式方法调用.看起来像我要求的.至少它非常有趣.我认为这已足够接近了.此外,其他语言也有类似的东西,例如Haskell STM.注意我没说它应该用于生产;-)

c#

20
推荐指数
2
解决办法
7581
查看次数

在Winforms中使用IoC时如何不绕过容器

我是IoC世界的新手,在Winforms应用程序中实现它时遇到了问题.我有一个非常基本的应用程序Winform应用程序使用MVC,它是一个控制器,完成所有的工作和一个工作对话框(显然与控制器).所以我将所有类加载到program.cs中的IoC容器中,并使用容器创建主窗体控制器.但这是我遇到问题的地方,我只想在使用它时和在using语句中创建工作对话框控制器.

起初我传入容器,但我读过这是不好的做法,更多的容器是静态的,我想对这个类进行单元测试.

那么如何在不通过容器的情况下以单元测试友好的方式创建类,我正在考虑抽象工厂模式,但仅在没有使用IoC的情况下解决我的问题.

我没有使用任何着名的框架,我从这篇博客文章中借用了一个基本的框架http://www.kenegozi.com/Blog/2008/01/17/its-my-turn-to-build-an-ioc-容器在15分钟和-33-lines.aspx

我如何使用IoC?这对IoC来说是错误的用法吗?

.net c# unit-testing inversion-of-control winforms

7
推荐指数
1
解决办法
1675
查看次数

ASP.NET UpdatePanel Javascript回调

我最近遇到过这个问题并认为它真的很有帮助.我的问题是,在ASP.NET中通过AJAX加载updatepanel后,你会如何调用一段javascript?

在面板加载后我需要重新初始化一个jQuery日期选择器.

javascript asp.net-ajax callback

6
推荐指数
1
解决办法
4008
查看次数

sql查询树就像结构一样

我有一个树类结构的类,树中的树节点有产品,产品有Cods我需要选择所有顶级类别(parent = null),叶子(Cods)匹配一些标准...

SELECT  
    Category.Id AS Id0_, 
    Category.Name AS Name0_, 
    Category.COrder AS COrder0_, 
    Category.Description AS Descript4_0_, 
    Category.ParentId AS ParentId0_, 
    Category.Description_En AS Descript6_0_, 
    Category.Name_En AS Name_En0_, 
    Category.ImagePath AS ImagePath0_ 
FROM
    Category 
    LEFT JOIN Category AS c1 ON Category.Id=c1.ParentId
    LEFT JOIN Category AS c2 ON c1.Id=c2.ParentId
    LEFT JOIN Category AS c3 ON c2.Id=c3.ParentId
    LEFT JOIN Category AS c4 ON c3.Id=c4.ParentId
    LEFT JOIN Product ON 
        c4.Id=Product.Category 
        OR c3.Id=Product.Category 
        OR c2.Id=Product.Category 
        OR c1.Id=Product.Category 
        OR Category.Id=Product.Category
    INNER JOIN Cod ON Cod.Product=Product.Id   
WHERE
    Category.ParentId is null …
Run Code Online (Sandbox Code Playgroud)

sql tree join sql-server-2005

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

嵌套类的范围?

我试图理解Python中嵌套类的范围.这是我的示例代码:

class OuterClass:
    outer_var = 1
    class InnerClass:
        inner_var = outer_var
Run Code Online (Sandbox Code Playgroud)

类的创建没有完成,我收到错误:

<type 'exceptions.NameError'>: name 'outer_var' is not defined
Run Code Online (Sandbox Code Playgroud)

尝试inner_var = Outerclass.outer_var不起作用.我明白了:

<type 'exceptions.NameError'>: name 'OuterClass' is not defined
Run Code Online (Sandbox Code Playgroud)

我试图访问静态outer_varInnerClass.

有没有办法做到这一点?

python scope nested class inner-classes

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

我们无法在.NET 4.0中的通用对象中使用Interop对象吗?

我正在使用VS 2010并致力于将我们的应用程序升级到.NET 4.该应用程序是以Excel为基础构建的,我们希望利用.NET的一些改进来使用Excel.但是我遇到了一个奇怪的错误,这个错误似乎是在通用字典中使用Excel Interop对象引起的.这是生成的错误:

C:\MyApp\TheAssembly\MyClass.cs(823,57): 
error CS1769: Type 'MyApp\OtherAssemply.IMyController.SheetReports' from assembly 'c:\MyApp\OtherAssemply.\bin\Debug\OtherAssembly.dll' 
 cannot be used across assembly boundaries because it has a generic type 
 parameter that is an embedded interop type.
Run Code Online (Sandbox Code Playgroud)

这是有问题的实际属性:

Dictionary<Excel.Worksheet, IReportSheet> SheetReports { get;}
Run Code Online (Sandbox Code Playgroud)

我们无法在通用对象中使用Interop对象吗?如果是这样,这是.NET 4.0中的严重限制.我尝试将Embed Interop属性设置为false,但这似乎没有改变任何东西.如果有任何解决方法,请告诉我.

excel .net-4.0 excel-interop

4
推荐指数
2
解决办法
3068
查看次数

正确声明ANSI C中的main()函数

C标准说:

程序启动时调用的函数名为main.该实现声明此函数没有原型.它应该使用int的返回类型定义,并且没有参数:

int main(void) { /* ... */ }
Run Code Online (Sandbox Code Playgroud)

或者有两个参数(这里称为argc和argv,虽然可以使用任何名称,因为它们是声明它们的函数的本地名称):

int main(int argc, char *argv[]) { /*
... */ }
Run Code Online (Sandbox Code Playgroud)

或等效的或以某种其他实现定义的方式.

但是,Kernighan&Ritchie在他们的第二版(规范的ANSI C)圣经中使用:

main()
{
  /* taram pampam ... */

  return 0;
}
Run Code Online (Sandbox Code Playgroud)

谁是对的?它是否与函数没有返回值自动假设int在C中返回?

c kr-c

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

格式化日志的最佳做法是什么?

我正在编写一个蜜罐软件,它将广泛记录与它的交互,我打算登录明文.log文件.

我有两个问题,来自对服务器日志记录不太熟悉的人.

  1. 首先,我如何分解我的日志文件,我假设在运行一个月后我不想要一个大.log文件,我是按天,月,年来做的吗?它有一些标准吗?

  2. 每行的格式,我有一个标准分隔符,即*, - ,+,什么?在任何地方都有标准(我的谷歌搜索没有带来太多)?

standards logging

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