我一直在尝试使用ressource视图将文件夹浏览器添加到现有的MFC界面( MFC EditBrowse Control )。该项目在共享DLL中使用 MFC 。
但是没有文件夹浏览器,我最终得到一个文本框,当对话框启动时会弹出一条错误消息“ Un argument non valideaétédétecté”(参数无效)遇到了。)
我已经有一个类似的文件夹浏览器项目,但我从头开始创建它,所以我能够在静态库中使用 MFC,这似乎是主要区别。
我已经找到了有关在.rc文件中包含 import UIKit
class interestCollectionViewCell: UICollectionViewCell
{
var interest2: Interest1! {
didSet {
updateUI()
}
}
@IBOutlet weak var futerdimageview: UIImageView!
@IBOutlet weak var interstTitleLabel: UILabel!
private func updateUI()
{
interstTitleLabel.text! = interest2.title
futerdimageview.image = interest2.featuredImage!
}
override func layoutSubviews() {
super.layoutSubviews()
self.layer.cornerRadius = 10.0
self.clipsToBounds = true
}
}
的信息,这确实是两个项目之间的差异,但包括它并没有解决问题。
import UIKit
class Interest1
{
var title = ""
var description = ""
var featuredImage: UIImage!
var button1: UIButton!
var button2: UIButton!
var button3: UIButton!
var button4: UIButton!
init(title: String, featuredImage: UIImage!)
{
self.title = title
self.featuredImage = featuredImage
}
static func createInterest() -> [Interest1]
{
return [
Interest1(title: "One", featuredImage: UIImage(named:"001.png")!),
Interest1(title: "Two", featuredImage: UIImage(named:"002.png")!),
Interest1(title: "Three", featuredImage: UIImage(named:"003.png")!),
Interest1(title: "Four", featuredImage: UIImage(named:"004.png")!),
]
}
}
.rc文件中的另一部分:
"afxribbon.rc"
我还读过关于使用BEGIN
"#define _AFX_NO_SPLITTER_RESOURCES\r\n"
"#define _AFX_NO_OLE_RESOURCES\r\n"
"#define _AFX_NO_TRACKER_RESOURCES\r\n"
"#define _AFX_NO_PROPERTY_RESOURCES\r\n"
"\r\n"
"#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_DEU)\r\n"
"#ifdef _WIN32\r\n"
"LANGUAGE 7, 1\r\n"
"#pragma code_page(1252)\r\n"
"#endif //_WIN32\r\n"
"#include ""res\\FAROSDKDemoApp.rc2"" // non-Microsoft Visual C++ edited resources\r\n"
"#include ""l.deu\\afxres.rc"" // Standard components\r\n"
// part that I added
"#if !defined(_AFXDLL)\r\n"
"#include ""afxribbon.rc"" // MFC ribbon and control bar resources\r\n"
"#endif\r\n"
// end of the part that I added
"#endif\r\n"
"\0"
END
而不是#ifndef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 3 resource.
//
#define _AFX_NO_SPLITTER_RESOURCES
#define _AFX_NO_OLE_RESOURCES
#define _AFX_NO_TRACKER_RESOURCES
#define _AFX_NO_PROPERTY_RESOURCES
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_DEU)
#ifdef _WIN32
LANGUAGE 7, 1
#pragma code_page(1252)
#endif //_WIN32
#include "res\FAROSDKDemoApp.rc2" // non-Microsoft Visual C++ edited resources
#include "l.deu\afxres.rc" // Standard components
// part that I added
#if !defined(_AFXDLL)
#include "afxribbon.rc" // MFC ribbon and control bar resources
#endif
// end of the part that I added
#endif
/////////////////////////////////////////////////////////////////////////////
#endif // not APSTUDIO_INVOKED
作为我的主类,但我的第二个项目使用了CWinApp(没有任何问题)。此外,当我尝试切换到CWinAppEx时,它说:不允许不完整的类型因此CWinAppEx
函数定义中的许多其他变量都是未定义的。
以下是与文件夹浏览器相关的声明:
标题文件:
CWinApp
Cpp文件:
InitInstance()
您是否有任何建议让文件夹浏览器正常工作?