+    SetFont(*wxSMALL_FONT);
+
+    int                             i;
+    for (i = 0; i < n; i++)
+    {
+        Append(asChoices[i]);
+    }
+
+    SetSize( rPos.x
+            ,rPos.y
+            ,rSize.x
+            ,rSize.y
+           );
+    if (!rsValue.empty())
+    {
+        SetValue(rsValue);
+    }
+    gfnWndprocEdit = (WXFARPROC)::WinSubclassWindow( (HWND)GetHwnd()
+                                                    ,(PFNWP)wxComboEditWndProc
+                                                   );
+    ::WinSetWindowULong(GetHwnd(), QWL_USER, (ULONG)this);
+    Show(true);
+    return true;
+} // end of wxComboBox::Create
+
+void wxComboBox::SetValue(
+  const wxString&                   rsValue
+)
+{
+    if ( HasFlag(wxCB_READONLY) )
+        SetStringSelection(rsValue);
+    else
+        ::WinSetWindowText(GetHwnd(), (PSZ)rsValue.c_str());
+} // end of wxComboBox::SetValue
+
+//