我需要编写一个应用程序来播放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帧.所以我的问题是更好的方法是什么?
我们正在创建一个沉浸式应用程序,需要具有与a类似的行为UIAlertView,但我们不希望它看起来像系统对话框,我们想要使用我们自己的图形.我完成了很大一部分工作,但是我遇到了一些障碍:
如何让UIView显示在状态栏上方(这样我可以变暗,就像UIAlertView一样)?这可能吗?我已将其添加到窗口中,但它仍显示在状态栏下方.
如何将其显示为部分透明但文本仍然完全不透明?我希望它显示类似于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.
只是好奇,是否支持普通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.注意我没说它应该用于生产;-)
我是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来说是错误的用法吗?
我最近遇到过这个问题并认为它真的很有帮助.我的问题是,在ASP.NET中通过AJAX加载updatepanel后,你会如何调用一段javascript?
在面板加载后我需要重新初始化一个jQuery日期选择器.
我有一个树类结构的类,树中的树节点有产品,产品有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) 我试图理解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_var的InnerClass.
有没有办法做到这一点?
我正在使用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,但这似乎没有改变任何东西.如果有任何解决方法,请告诉我.
C标准说:
程序启动时调用的函数名为main.该实现声明此函数没有原型.它应该使用int的返回类型定义,并且没有参数:
Run Code Online (Sandbox Code Playgroud)int main(void) { /* ... */ }或者有两个参数(这里称为argc和argv,虽然可以使用任何名称,因为它们是声明它们的函数的本地名称):
Run Code Online (Sandbox Code Playgroud)int main(int argc, char *argv[]) { /* ... */ }或等效的或以某种其他实现定义的方式.
但是,Kernighan&Ritchie在他们的第二版(规范的ANSI C)圣经中使用:
main()
{
/* taram pampam ... */
return 0;
}
Run Code Online (Sandbox Code Playgroud)
谁是对的?它是否与函数没有返回值自动假设int在C中返回?
我正在编写一个蜜罐软件,它将广泛记录与它的交互,我打算登录明文.log文件.
我有两个问题,来自对服务器日志记录不太熟悉的人.
首先,我如何分解我的日志文件,我假设在运行一个月后我不想要一个大.log文件,我是按天,月,年来做的吗?它有一些标准吗?
每行的格式,我有一个标准分隔符,即*, - ,+,什么?在任何地方都有标准(我的谷歌搜索没有带来太多)?
c# ×3
winforms ×2
.net ×1
.net-4.0 ×1
asp.net-ajax ×1
c ×1
callback ×1
class ×1
cocoa-touch ×1
excel ×1
iphone ×1
javascript ×1
join ×1
kr-c ×1
logging ×1
nested ×1
objective-c ×1
performance ×1
python ×1
scope ×1
sql ×1
standards ×1
tree ×1
unit-testing ×1
windows ×1