当前位置: 代码迷 >> 综合 >> cocos2d-X 节点(UITextField.h)API
  详细解决方案

cocos2d-X 节点(UITextField.h)API

热度:45   发布时间:2024-01-04 04:02:49.0

本文来自http://blog.csdn.net/runaying ,引用必须注明出处!

cocos2d-X 节点(UITextField.h)API

温馨提醒:为了大家能更好学习,强烈推荐大家看看本人的这篇博客 Cocos2d-X权威指南笔记

///cocos2d-x-3.0alpha0/extensions/CocoStudio/GUI/UIWidgets#ifndef __UITEXTFIELD_H__
#define __UITEXTFIELD_H__#include "../BaseClasses/UIWidget.h"NS_CC_EXT_BEGINclass UICCTextField: public TextFieldTTF, public TextFieldDelegate
{
public:UICCTextField();~UICCTextField();virtual void onEnter();// staticstatic UICCTextField* create(const char *placeholder, const char *fontName, float fontSize);// CCTextFieldDelegatevirtual bool onTextFieldAttachWithIME(TextFieldTTF *pSender);virtual bool onTextFieldDetachWithIME(TextFieldTTF * pSender);virtual bool onTextFieldInsertText(TextFieldTTF * pSender, const char * text, int nLen);virtual bool onTextFieldDeleteBackward(TextFieldTTF * pSender, const char * delText, int nLen);void insertText(const char* text, int len);void deleteBackward();void openIME();void closeIME();void setMaxLengthEnabled(bool enable);bool isMaxLengthEnabled();void setMaxLength(int length);int getMaxLength();int getCharCount();void setPasswordEnabled(bool enable);bool isPasswordEnabled();void setPasswordStyleText(const char* styleText);void setPasswordText(const char* text);void setAttachWithIME(bool attach);bool getAttachWithIME();void setDetachWithIME(bool detach);bool getDetachWithIME();void setInsertText(bool insert);bool getInsertText();void setDeleteBackward(bool deleteBackward);bool getDeleteBackward();protected:bool m_bMaxLengthEnabled;int m_nMaxLength;bool m_bPasswordEnabled;std::string m_strPasswordStyleText;bool m_bAttachWithIME;bool m_bDetachWithIME;bool m_bInsertText;bool m_bDeleteBackward;
};typedef enum
{TEXTFIELD_EVENT_ATTACH_WITH_IME,TEXTFIELD_EVENT_DETACH_WITH_IME,TEXTFIELD_EVENT_INDERT_TEXT,TEXTFIELD_EVENT_DELETE_BACKWARD,
}TextFiledEventType;typedef void (Object::*SEL_TextFieldEvent)(Object*, TextFiledEventType);
#define textfieldeventselector(_SELECTOR) (SEL_TextFieldEvent)(&_SELECTOR)//class UITextField : public UIWidget
class UITextField : public UIWidget
{
public:UITextField();virtual ~UITextField();static UITextField* create();virtual bool init();virtual void initRenderer();void setTouchSize(const Size &size);void setText(const char* text);void setPlaceHolder(const char* value);void setFontSize(int size);void setFontName(const char* name);virtual void didNotSelectSelf();const char* getStringValue();virtual bool onTouchBegan(const Point &touchPoint);void setMaxLengthEnabled(bool enable);bool isMaxLengthEnabled();void setMaxLength(int length);int getMaxLength();void setPasswordEnabled(bool enable);bool isPasswordEnabled();void setPasswordStyleText(const char* styleText);virtual void update(float dt);bool getAttachWithIME();void setAttachWithIME(bool attach);bool getDetachWithIME();void setDetachWithIME(bool detach);bool getInsertText();void setInsertText(bool insertText);bool getDeleteBackward();void setDeleteBackward(bool deleteBackward);void addEventListener(Object* target, SEL_TextFieldEvent selecor);virtual void setAnchorPoint(const Point &pt);virtual void setColor(const Color3B &color);virtual void setOpacity(int opacity);/*** Returns the "class name" of widget.      //返回 widget的 名字*/virtual const char* getDescription() const;/*compatibel*//*** These methods will be removed*/void setMaxLengthEnable(bool is){setMaxLengthEnabled(is);};void setPasswordEnable(bool is){setPasswordEnabled(is);};/************/virtual const Size& getContentSize() const;virtual Node* getVirtualRenderer();
protected:// eventvoid attachWithIMEEvent();void detachWithIMEEvent();void insertTextEvent();void deleteBackwardEvent();virtual void onSizeChanged();void textfieldRendererScaleChangedWithSize();
protected:UICCTextField* _textFieldRenderer;float _touchWidth;float _touchHeight;bool _useTouchArea;Object* _eventListener;SEL_TextFieldEvent _eventSelector;};NS_CC_EXT_END#endif /* defined(__CocoGUI__UITextField__) */